KR101428138B1 - 통신 방법 및 디바이스 - Google Patents

통신 방법 및 디바이스 Download PDF

Info

Publication number
KR101428138B1
KR101428138B1 KR1020107013547A KR20107013547A KR101428138B1 KR 101428138 B1 KR101428138 B1 KR 101428138B1 KR 1020107013547 A KR1020107013547 A KR 1020107013547A KR 20107013547 A KR20107013547 A KR 20107013547A KR 101428138 B1 KR101428138 B1 KR 101428138B1
Authority
KR
South Korea
Prior art keywords
buffer memory
sockets
list
pointer
rxs
Prior art date
Application number
KR1020107013547A
Other languages
English (en)
Other versions
KR20100097705A (ko
Inventor
마리우스 라자르
토마스 프로멘트
Original Assignee
알까뗄 루슨트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 알까뗄 루슨트 filed Critical 알까뗄 루슨트
Publication of KR20100097705A publication Critical patent/KR20100097705A/ko
Application granted granted Critical
Publication of KR101428138B1 publication Critical patent/KR101428138B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

커넥션 인터페이스들(SC) 중 하나(SC3)는 선택된 프로세스와 연계된 각각의 커넥션 인터페이스에 의해 수신되는 데이터 스트림을 수신할 수 있도록 지정된다. 이에 의해 지정된 상기 커넥션 인터페이스(SC3)는 선택된 프로세스에 참여하는 모든 커넥션 인터페이스 세트에 의해 수신되는 데이터 스트림을 포함하는 버퍼 메모리를 열거하는 추가 수신 리스트(RXS)를 더 포함한다. 각 커넥션 인터페이스(SC1, SC2, SC3)의 버퍼 메모리(SKB)는 양측 수신 리스트(RX, RXS)에 동시에 속하고, 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 추가 선행 포인터와 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 추가 후속 포인터를 더 포함하며, 상기 프로세스에 수반되는 커넥션 인터페이스 세트에 의해 수신되는 데이터 스트림을 상기 수신된 데이터 스트림이 도달한 순서로 액세스하는 것을 가능하게 한다.

Description

통신 방법 및 디바이스{METHOD AND DEVICE FOR COMMUNICATING BETWEEN SEVERAL CONNECTION INTERFACES}
본 발명은 통신 네트워크 내에서 다수의 소켓들 사이의 통신에 관한 것이다.
본 발명은 인터넷 통신 네트워크를 통해 다수의 소스로부터 메시지 또는 데이터를 수신하고 TCP ("Transport Control Protocol")와 같은 프로토콜 또는 그들의 등가물을 이용하여 동작하는 임의의 프로세스에 적용될 수 있다.
일반적으로, 소켓은 수신된 데이터 스트림을 포함하는 버퍼 메모리를 열거한 수신 리스트 및 전송할 데이터 스트림을 포함하는 버퍼 메모리를 열거한 전송 리스트를 포함한다.
수신 리스트 및 전송 리스트는 그들을 구성하는 버퍼 메모리가 대응 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 "이전" 포인터와 대응 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 제 2의 "다음" 포인터를 포함하는 구조를 각각 소유한다는 점에서 "이중 링크"된 것으로 말해진다.
단 하나의 소켓으로, 프로세스는 메시지 또는 데이터를 수신하며 상기 소켓의 수신 리스트에 도달할 것을 대기할 수 있다.
다수의 소켓으로, 먼저 수신 리스트의 주기적 분석을 실행하여 판독하고자 하는 메시지를 수신한 소켓을 찾는 것이 필수적이다.
다수의 알려져 있는 솔루션, 특히 "선택", "폴", "큐(kqueue)" 또는 "이폴(epoll)"로서 알려진 것들이 이 분석을 구현하도록 제안되었다.
이러한 알려진 솔루션은 비교적 만족스럽지만, 메시지가 도달하는 순서를 고려하지 않으며, 추가 작업을 수반한다.
그 결과 네트워크 성능이 상당히 열화되며, 더 많은 소켓(예컨대, 1000개 이상의 소켓)이 판독될 필요가 있을수록 더 크게 열화된다.
본 발명은 위 단점을 완화시킨다.
본 발명은 통신 네트워크 내에서 다수의 소켓들 사이의 통신을 위한 통신 디바이스로서, 각각의 소켓은 수신된 데이터 스트림을 포함하는 버퍼 메모리를 열거하는 수신 리스트를 포함하고, 상기 버퍼 메모리 각각은 대응 수신 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 "이전" 포인터와 대응 수신 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 제 2의 "다음" 포인터를 포함하는 구조를 갖는 통신 디바이스에 관한 것이다.
본 발명의 한 가지 일반적인 정의에 따르면, 소켓들 중 하나는 선택된 프로세스와 연계된 각각의 소켓에 의해 수신되는 데이터 스트림을 수신할 수 있도록 지정된다.
그에 의해 지정된 상기 소켓은 선택된 프로세스에 수반되는 모든 소켓에 의해 수신되는 데이터 스트림을 포함하는 버퍼 메모리를 열거하는 추가 수신 리스트를 더 포함한다.
각 소켓의 버퍼 메모리는 위 수신 리스트 양자 모두에 동시에 속하고, 각각상기 추가 수신 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 추가 "이전" 포인터와 상기 추가 수신 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 추가 "다음" 포인터를 더 포함한다.
이 방법으로, 본 발명의 디바이스는 위와 같이 지정된 소켓이 상기 프로세스에 수반되는 모든 소켓에 의해 수신되는 데이터 스트림을 액세스하는 것 및 상기 수신된 데이터 스트림이 도달한 순서로 그와 같이 하는 것을 가능하게 한다.
그 결과, 네트워크 성능은 이전 구조보다 우수해진다.
본 발명의 다른 목적은 본 발명의 디바이스에 의해 구현되는 통신 방법이다.
본 발명의 다른 특징 및 이점은 아래의 상세한 설명 및 도면에 의해 명백해질 것이다.
도 1은 본 발명에 따른 지정된 소켓이 장착된 통신 디바이스를 개략적으로 도시한 도면,
도 2는 본 발명에 따른 버퍼 메모리 구조를 개략적으로 도시한 도면이다.
도 1에는 TCP/IP 메시징 프로세스가 도시되어 있다.
이러한 프로세스는 TCP 프로토콜을 이용하여 동작하는 통신 네트워크를 통해 다수의 소스로부터 메시지를 수신한다.
소켓(SC)은 각각의 소스와 연계되며, 개별적으로는 SC1, SC2, SC3으로 표기된다.
각각의 소켓(SC)은 수신된 데이터 스트림을 포함하는 버퍼 메모리(SKB)를 열거한 수신 리스트(RX)를 포함한다.
각각의 소켓은 전송할 데이터 스트림을 포함하는 버퍼 메모리를 열거한 전송 리스트(도시하지 않음)를 더 포함한다.
도 2에서, 수신 리스트(RX)의 구조는 각각의 버퍼 메모리(SKB)가 대응 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리(SKB)를 나타내는 "이전" 포인터(PP)와 대응 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 제 2의 "다음" 포인터를 포함하도록 한다.
버퍼 메모리는 선택된 소켓에 대해 서로 링크된다.
각각의 버퍼 메모리(SKB)는 데이터 패킷이 송신되거나 데이터 패킷이 수신되는 디바이스(ND)의 구조를 식별한다.
버퍼 메모리(SKB)는 각각의 패킷과 연계된다. 패킷의 헤더는 포인터 세트(TH, IPH, MAC)에 의해 정확하게 위치 지어진다.
버퍼 메모리는 주어진 소켓에 대해 링크되고, 프로토콜 헤더로의 링크 및 패킷에 연계되는 디바이스와 같은 정보를 포함한다.
다시 도 1을 참조한다.
소켓(SC3)은 메시징 프로세스와 같은 선택된 프로세스와 연계되는 각각의 소켓(SC1, SC2, SC3)으로부터 수신된 데이터 스트림을 추가로 수신하도록 지정된다.
소켓(SC3)은 상기 프로세스에 수반되는 소켓 세트에 의해 수신되는 데이터 스트림을 포함하는 버퍼 메모리(SKB)를 열거하는 추가 수신 리스트(RXS)를 포함한다.
다시 도 2를 참조한다.
각 소켓(SC1, SC2, SC3)의 버퍼 메모리(SKB)는 수신 리스트(RX, RXS) 모두에 동시에 속한다.
버퍼 메모리(SKB) 각각은 추가 수신 리스트(RXS)에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 추가 "이전" 포인터(PPS) 및 추가 수신 리스트(RXS)에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 추가 "다음" 포인터(PSS)를 더 포함한다.
그에 의해 지정된 소켓(SC3) 내에서는 상기 프로세스에 수반되는 소켓 세트에 의해 수신된 데이터 스트림을 상기 수신된 데이터 스트림이 도달한 순서로 액세스하는 것이 가능하다.
이것은, 추가 수신 리스트(RXS)가, 수신된 데이터 스트림을 이 데이터가 다양한 소켓에 도달한 순서로 위치할 수 있게 하는 포인터 정보를 포함하기 때문이다.
예를 들어, 도 1에서, 수신된 데이터 스트림은 다음 순서로 도달한다.
Skb 3.1
Skb 2.1
Skb 1.1
Skb 3.2
Skb 1.2
Skb 1.3
추가 수신 리스트(RXS)를 이용하면, 이 순서로 데이터 스트림을 액세스하는 것이 가능한 반면, 추가 수신 리스트가 없을 때에는 액세스는 소켓의 랭크, 즉 제 1 소켓(SC1), 그 다음 소켓(SC2), 및 그 다음 소켓(SC3)을 기초로 한다. 이러한 경우, 데이터 스트림이 처리되는 순서는 다음과 같을 것이다.
Skb 1.1
Skb 1.2
Skb 1.3
Skb 2.1
Skb 3.1
Skb 3.2

Claims (2)

  1. 통신 네트워크 내에서 다수의 소켓들(SC1, SC2, SC3) 사이의 통신을 위한 통신 디바이스로서,
    각각의 소켓(SC1, SC2, SC3)은 수신된 데이터 스트림을 포함하는 버퍼 메모리(SKB)를 열거하는 수신 리스트(RX)를 포함하고, 상기 수신 리스트(RX)는 각각의 버퍼 메모리(SKB)가 대응 수신 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 "이전" 포인터(PP)와 대응 수신 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 제 2의 "다음" 포인터를 포함하는 구조를 가지며,
    상기 소켓들 중 하나(SC3)는 선택된 프로세스와 관련된 각각의 소켓에 의해 수신되는 데이터 스트림을 수신할 수 있도록 지정되고,
    지정된 소켓(SC3)은 선택된 프로세스에 수반되는 모든 소켓에 의해 수신되는 데이터 스트림을 포함하는 버퍼 메모리를 열거하는 추가 수신 리스트(RXS)를 더 포함하며,
    상기 각 소켓(SC1, SC2, SC3)의 버퍼 메모리(SKB)는 상기 수신 리스트들(RX, RXS) 양자에 동시에 속하고, 각각의 버퍼 메모리는 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 추가의 "이전" 포인터(PPS)와 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 추가의 "다음" 포인터(PSS)를 더 포함하여, 상기 프로세스에 수반되는 소켓 세트에 의해 수신되는 데이터 스트림을 상기 수신된 데이터 스트림이 도달한 순서로 액세스하는 것을 가능하게 하는
    통신 디바이스.
  2. 통신 네트워크 내에서 다수의 소켓들(SC1, SC2, SC3) 사이의 통신을 위한 통신 방법으로서,
    각각의 소켓(SC1, SC2, SC3)은 수신된 데이터 스트림을 포함하는 버퍼 메모리(SKB)를 열거하는 수신 리스트(RX)를 포함하고, 상기 수신 리스트(RX)는 각각의 버퍼 메모리(SKB)가 대응 수신 리스트에서 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 "이전" 포인터(PP)와 대응 수신 리스트에서 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 제 2의 "다음" 포인터를 포함하는 구조를 가지며,
    상기 소켓들 중 하나(SC3)는 선택된 프로세스와 연계된 각각의 소켓에 의해 수신되는 데이터 스트림을 수신할 수 있도록 지정되고,
    지정된 소켓(SC3)은 선택된 프로세스에 수반되는 모든 소켓에 의해 수신되는 데이터 스트림을 포함하는 버퍼 메모리를 열거하는 추가 수신 리스트(RXS)를 더 포함하며,
    상기 각 소켓(SC1, SC2, SC3)의 버퍼 메모리(SKB)는 상기 수신 리스트들(RX, RXS) 양자에 동시에 속하고, 각각의 버퍼 메모리는 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 선행하는 버퍼 메모리를 나타내는 추가의 "이전" 포인터(PPS)와 상기 추가 수신 리스트(RXS)에서 상기 현재 버퍼 메모리에 후속하는 버퍼 메모리를 나타내는 추가의 "다음" 포인터(PSS)를 더 포함하여, 상기 프로세스에 수반되는 소켓 세트에 의해 수신되는 데이터 스트림을 상기 수신된 데이터 스트림이 도달한 순서로 액세스하는 것을 가능하게 하는
    통신 방법.
KR1020107013547A 2007-12-18 2008-12-11 통신 방법 및 디바이스 KR101428138B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0759931 2007-12-18
FR0759931A FR2925190B1 (fr) 2007-12-18 2007-12-18 Procede et dispositif de communication entre plusieurs interfaces de connexion
PCT/FR2008/052278 WO2009080997A1 (fr) 2007-12-18 2008-12-11 Procede et dispositif de communication entre plusieurs interfaces de connexion

Publications (2)

Publication Number Publication Date
KR20100097705A KR20100097705A (ko) 2010-09-03
KR101428138B1 true KR101428138B1 (ko) 2014-08-07

Family

ID=39577259

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107013547A KR101428138B1 (ko) 2007-12-18 2008-12-11 통신 방법 및 디바이스

Country Status (8)

Country Link
US (1) US7852858B2 (ko)
EP (1) EP2073127B1 (ko)
JP (1) JP4938134B2 (ko)
KR (1) KR101428138B1 (ko)
CN (1) CN101488910B (ko)
AT (1) ATE534082T1 (ko)
FR (1) FR2925190B1 (ko)
WO (1) WO2009080997A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101789959B (zh) * 2009-12-30 2013-05-08 北京天融信科技有限公司 一种多核系统中的skb重用方法及装置
CN101827026B (zh) * 2010-04-01 2012-04-18 东方电子股份有限公司 一种iec61850高层协议报文发送的管理方法
CN102316116B (zh) * 2011-09-29 2014-05-21 高新兴科技集团股份有限公司 一种支持多平台网络通讯处理系统及方法
CN102508783B (zh) * 2011-10-18 2014-04-09 深圳市共进电子股份有限公司 一种避免数据混乱的内存回收方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060093704A (ko) * 2003-09-30 2006-08-25 코닌클리케 필립스 일렉트로닉스 엔.브이. 클라이언트 요청 외부 어드레스 매핑
KR20070042152A (ko) * 2004-07-14 2007-04-20 인터내셔널 비지네스 머신즈 코포레이션 통신 접속 수립 방법과 시스템, 데이터 전송 방법과시스템, 및 컴퓨터 판독 가능한 기록 매체
KR20070085272A (ko) * 2004-10-19 2007-08-27 엔비디아 코포레이션 Rx fifo 버퍼를 사용하여 고속 네트워크애플리케이션에서 rx 패킷을 프로세싱하는 시스템 및방법
KR20070106446A (ko) * 2006-04-28 2007-11-01 삼성전자주식회사 고속 통신 기기로부터 무선 네트워크로의 역방향 통신을위한 이동 단말의 데이터 흐름 제어 장치 및 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991520A (en) * 1996-02-02 1999-11-23 Sony Corporation Application programming interface for managing and automating data transfer operations between applications over a bus structure
US7181525B1 (en) * 1996-08-05 2007-02-20 Computer Associates Think, Inc. Dynamic method for connecting a client to a server application
US6073177A (en) * 1997-08-05 2000-06-06 Sterling Software, Inc. Dynamic method for connecting a client to a server application
US6343321B2 (en) * 1997-10-27 2002-01-29 Sun Microsystems, Inc. Method and apparatus for network transport independence
US6138186A (en) * 1998-07-20 2000-10-24 Hewlett-Packard Company Burst transfer management system utilizing pointers to ensure that there is enough space in a buffer to receive burst transfers without corrupting data
JP4299928B2 (ja) * 1999-08-30 2009-07-22 株式会社東芝 分散監視制御システム及び方法並びに分散監視制御用ソフトウェアを記録した記録媒体
US6609161B1 (en) * 2000-06-01 2003-08-19 Adaptec, Inc. Two-dimensional execution queue for host adapters
US6922727B2 (en) * 2001-06-26 2005-07-26 International Business Machines Corporation Method and system for managing parallel data transfer through multiple sockets to provide scalability to a computer network
US7269661B2 (en) * 2002-02-12 2007-09-11 Bradley Richard Ree Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet
US7957409B2 (en) * 2003-01-23 2011-06-07 Cisco Technology, Inc. Methods and devices for transmitting data between storage area networks
US7430623B2 (en) * 2003-02-08 2008-09-30 Hewlett-Packard Development Company, L.P. System and method for buffering data received from a network
US20050010644A1 (en) * 2003-07-07 2005-01-13 Brown Scott T. High performance electronic message delivery engine
JP4343760B2 (ja) * 2004-04-28 2009-10-14 株式会社日立製作所 ネットワークプロトコル処理装置
US7769905B1 (en) * 2004-08-13 2010-08-03 Oracle America, Inc. Adapting network communication to asynchronous interfaces and methods
US7751346B2 (en) * 2005-12-01 2010-07-06 Electronics And Telecommunications Research Institute Apparatus for searching TCP and UDP sockets
US7911948B2 (en) * 2007-10-17 2011-03-22 Viasat, Inc. Methods and systems for performing TCP throttle

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060093704A (ko) * 2003-09-30 2006-08-25 코닌클리케 필립스 일렉트로닉스 엔.브이. 클라이언트 요청 외부 어드레스 매핑
KR20070042152A (ko) * 2004-07-14 2007-04-20 인터내셔널 비지네스 머신즈 코포레이션 통신 접속 수립 방법과 시스템, 데이터 전송 방법과시스템, 및 컴퓨터 판독 가능한 기록 매체
KR20070085272A (ko) * 2004-10-19 2007-08-27 엔비디아 코포레이션 Rx fifo 버퍼를 사용하여 고속 네트워크애플리케이션에서 rx 패킷을 프로세싱하는 시스템 및방법
KR20070106446A (ko) * 2006-04-28 2007-11-01 삼성전자주식회사 고속 통신 기기로부터 무선 네트워크로의 역방향 통신을위한 이동 단말의 데이터 흐름 제어 장치 및 방법

Also Published As

Publication number Publication date
CN101488910B (zh) 2012-05-23
US20090310611A1 (en) 2009-12-17
FR2925190A1 (fr) 2009-06-19
JP2011509004A (ja) 2011-03-17
EP2073127A1 (fr) 2009-06-24
JP4938134B2 (ja) 2012-05-23
US7852858B2 (en) 2010-12-14
WO2009080997A1 (fr) 2009-07-02
FR2925190B1 (fr) 2009-11-20
ATE534082T1 (de) 2011-12-15
CN101488910A (zh) 2009-07-22
KR20100097705A (ko) 2010-09-03
EP2073127B1 (fr) 2011-11-16

Similar Documents

Publication Publication Date Title
US7843919B2 (en) Ethernet virtualization using a network packet alteration
US7298745B2 (en) Method and apparatus to manage packet fragmentation with address translation
US7499470B2 (en) Sequence-preserving deep-packet processing in a multiprocessor system
EP2806606A1 (en) Multiple gateway device, multiple line communication system, multiple line communication method and program
KR101428138B1 (ko) 통신 방법 및 디바이스
US7296100B1 (en) Packet buffer management apparatus and method
WO2010073474A1 (ja) 通信システム
US9843537B1 (en) Low-to-high speed cut-through communication
US7161940B2 (en) Broadcasting communications system
JP2007259374A (ja) ネットワーク送受信装置
US6999450B2 (en) Ethernet based TDM switch
US7965739B2 (en) Method and device for transmitting data
EP1641171A3 (en) Network data transmission
KR100378372B1 (ko) 데이터 네트워크에서 패킷 스위치 장치 및 방법
JP2002164924A (ja) パケット処理装置
WO2021140960A1 (ja) 通信装置、及び通信方法
US20170242738A1 (en) Static message placement in queues based on an apriori defined placement plan
US20080159332A1 (en) Methods and devices for using variable length subpackets in data transmissions
CN101217456A (zh) 一种在网络应用中对带宽进行调度的方法及系统
KR20220027711A (ko) 지능적 토픽 압축을 처리하는 dds 라우팅 서비스 시스템
KR20220027705A (ko) 지능적 토픽 압축을 처리하는 dds 라우팅 서비스 장치
Jae-Woo et al. Implementation of Packet Queue with Two Dimensional Array on Embedded System
KR20220027706A (ko) 지능적 토픽 압축을 처리하는 dds 라우팅 서비스 장치의 동작 방법
WO2021148856A1 (en) Techniques for queueing packet data units at a medium access control layer
US7415006B2 (en) Method and system for transporting data packets of a data stream

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee