KR20170021121A - Method and apparatus for translation of packet data - Google Patents

Method and apparatus for translation of packet data Download PDF

Info

Publication number
KR20170021121A
KR20170021121A KR1020150115529A KR20150115529A KR20170021121A KR 20170021121 A KR20170021121 A KR 20170021121A KR 1020150115529 A KR1020150115529 A KR 1020150115529A KR 20150115529 A KR20150115529 A KR 20150115529A KR 20170021121 A KR20170021121 A KR 20170021121A
Authority
KR
South Korea
Prior art keywords
value
packet
destination
ipv4
ipv6
Prior art date
Application number
KR1020150115529A
Other languages
Korean (ko)
Other versions
KR102112317B1 (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 KR1020150115529A priority Critical patent/KR102112317B1/en
Publication of KR20170021121A publication Critical patent/KR20170021121A/en
Application granted granted Critical
Publication of KR102112317B1 publication Critical patent/KR102112317B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/251Translation of Internet protocol [IP] addresses between different IP versions
    • H04L61/6059
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/167Adaptation for transition between two IP versions, e.g. between IPv4 and IPv6

Abstract

The present invention relates to a method and an apparatus for packet transform. The method for packet transform includes: a step of extracting an ID value from an IPv6 packet and storing it in a database; a step of generating a random first ID value in a case where the ID value is absent in the IPv6 packet and it is a TCP sync packet; a step of generating a regularly-changing second ID value in a case where the ID value is absent in the IPv6 packet and it is not the TCP sync packet; a step of updating the database by storing at least one of the first ID value and the second ID value; and a step of generating an IPv4 packet by inserting any one inherent ID value among the ID value, the first ID value, and the second ID value into an IPv4 header. According to the present invention, transform to the IPv4 packet is performed by unduplicated ID values being inserted into the IPv4 header with respect to the IPv6 packet with no fragment generation.

Description

패킷 변환 방법 및 장치{METHOD AND APPARATUS FOR TRANSLATION OF PACKET DATA}[0001] METHOD AND APPARATUS FOR TRANSLATION OF PACKET DATA [0002]

본 발명은 패킷 변환에 에 관한 것이다. 더욱 상세하게는 IPv4/IPv6 연동을 위해 IPv6 패킷을 IPv4 패킷으로 변환하는 방법 및 장치에 관한 것이다.The present invention relates to packet conversion. And more particularly, to a method and apparatus for converting IPv6 packets into IPv4 packets for IPv4 / IPv6 interworking.

주지하는 바와 같이, IPv4(Internet protocol version 4)는 32비트의 주소체계로 이루어져 있어 최대 약 40억개의 다른 주소를 부여할 수 있다. 그러나 IP 주소를 사용하고자 사람이나 사물이 기하급수적으로 늘어나면서 40억개의 주소로는 IP 주소 수요를 충족시킬 수가 없게 되었다.As will be appreciated, IPv4 (Internet protocol version 4) has a 32-bit address system, which can assign up to 4 billion different addresses. However, with the exponential growth of people or objects to use IP addresses, 4 billion addresses can not meet IP address demand.

이후 등장한 IPv6(Internet protocol version 6)은 128비트의 주소체계로 이루어져 있어 총 3.4×1038개의 다른 주소를 부여할 수 있다. 이외에도 IPv6은 네트워크의 속도 증가, 특정한 패킷 인식을 통한 높은 품질의 서비스 제공, 헤더 확장을 통한 패킷 출처 인증과 데이터 무결성 및 비밀의 보장 등의 장점이 있다.Since IPv6 (Internet Protocol version 6) has a 128-bit address system, a total of 3.4 × 10 38 different addresses can be given. In addition, IPv6 has advantages such as increasing network speed, providing high quality service through specific packet recognition, authenticating packet origin through header extension, ensuring data integrity and confidentiality.

IPv4의 헤더구조와 IPv6의 헤더구조를 비교하여 보면, 소스 주소와 목적지 주소의 길이에서 크게 차이가 난다. 32비트의 IPv4 주소부분과 128비트의 IPv6 주소부분은 네 배의 비트 차이가 나는 것이다. IPv4과 IPv6에서 할당할 수 있는 주소의 차이는 주소비트의 차이로 알 수 있다.When comparing the header structure of IPv4 with the header structure of IPv6, the length of the source address and the destination address are greatly different. The 32-bit IPv4 address portion and the 128-bit IPv6 address portion are four times the bit difference. The difference between IPv4 and IPv6 assignable addresses is known by the difference in address bits.

IPv4에서 IPv6으로 진화하면서 삭제된 필드로는 ID(Identification), 플래그(Flags), 프래그먼트 옵셋(Fragment Offset), 헤더 길이(Header Length), 체크섬(Checksum)이 있고, 이 중에서 IPv4의 ID는 IPv6의 확장 헤더로 옮겨 갔다. IPv6에서 확장 헤더의 ID는 어떤 데이터의 분할인지 구분해 주는 역할을 한다.There are ID (Identification), Flags, Fragment Offset, Header Length, and Checksum as IPv4-to-IPv6 evolved fields. Moved to the extension header. In IPv6, the ID of the extension header identifies which data is divided.

한편, IPv4/IPv6 연동은 IPv4 망에서 IPv6 망으로 자연스럽게 진화시키기 위한 전환(transition) 기술이다. 이러한 IPv4/IPv6 전환 기술을 크게 나누면 듀얼스택(dual stack) 기술, 터널링(tunneling) 기술, 변환(translation) 기술로 분류할 수 있다. 듀얼스택 기술은 하나의 시스템(호스트 또는 라우터)에서 IPv4와 IPv6를 동시에 처리하는 기술이고, 터널링 기술은 기존 IPv4 망을 전달망으로 사용해 서로 떨어져 있는 IPv6 망들을 연결시켜 주는 기술이며, 변환 기술은 IPv4 망과 IPv6 망 사이의 연동기술로 IPv6 클라이언트가 IPv4 서버에 접속할 때 또는 IPv4 클라이언트가 IPv6 서버에 접속할 때 사용된다.Meanwhile, IPv4 / IPv6 interworking is a transition technology for naturally evolving from IPv4 network to IPv6 network. These IPv4 / IPv6 switching technologies can be largely divided into dual stack technology, tunneling technology, and translation technology. Dual stack technology is a technology that simultaneously handles both IPv4 and IPv6 in a single system (host or router). Tunneling technology is a technology that connects existing IPv6 networks by using existing IPv4 network as a transport network. And IPv6 network, it is used when an IPv6 client connects to an IPv4 server or when an IPv4 client connects to an IPv6 server.

이 중에서 IPv4/IPv6 변환 기술에 포함되는 IPv6→IPv4 패킷 변환 장치는 IPv6 클라이언트가 IPv4 서버에 접속할 수 있도록 IPv6 패킷을 Pv4 패킷으로 변환해 주는 역할을 한다.Among them, the IPv6 → IPv4 packet conversion device included in the IPv4 / IPv6 conversion technology converts the IPv6 packet into the Pv4 packet so that the IPv6 client can access the IPv4 server.

종래 기술에 따른 IPv6→IPv4 패킷 변환 장치에 의하면, 프래그먼트가 발생하지 않은 패킷에 대해서는 ID 필드값을 전부 "0"으로 채움에 따라, 아래와 같은 문제점이 있었다.According to the IPv6 → IPv4 packet conversion apparatus according to the related art, there is the following problem as the ID field value is all filled with "0" for a packet in which a fragment has not been generated.

첫째, 외부에서 악의적으로 분석 시에 해당 IPv4 패킷은 IPv6 패킷이 변환되었음을 쉽게 추정이 가능하다.First, it is easy to estimate that the IPv4 packet has been IPv6 packet converted at the time of malicious analysis from the outside.

둘째, IPv6 패킷이 변환된 IPv4 패킷 헤더내의 ID 필드값을 전부 0으로 채워서 외부 서버로 TCP(Transmission Control Protocol) 접속을 시도하는 경우에 외부 서버의 방화벽(보안)기능에서 ID 필드값이 동일한 패킷이 반복 유입되면 DDoS(Distributed Denial of Service) 공격으로 인지하여, TCP 접속을 거부하여 정상적인 서비스 접속이 불가능해 진다.Second, when a TCP (Transmission Control Protocol) connection is attempted to an external server by filling the ID field value in the IPv4 packet header of the IPv6 packet converted with all 0s, a packet having the same ID field value in the firewall function of the external server If it receives repeatedly, it is recognized as DDoS (Distributed Denial of Service) attack, and TCP connection is denied and normal service connection becomes impossible.

셋째, IPv6 패킷을 IPv4 패킷으로 변환 시에 다음 번에 변환될 IPv4 헤더내의 ID 필드값을 예측 가능하기 때문에, 중간구간에서 다음 발생될 패킷에 대한 위조 또는 변조가 발생하여 정상적인 세션에 원치 않는 영향이 발생할 수 있다.Third, when the IPv6 packet is converted into the IPv4 packet, the value of the ID field in the next IPv4 header to be converted can be predicted. Therefore, the next packet to be generated in the middle section is falsified or altered, Lt; / RTI >

넷째, 최초 발생된 IPv4 패킷을 IPv6 패킷으로 변환하고, 이 패킷을 최종 IPv4 패킷으로 변환하여 외부로 전송 시에 최초의 IPv4 헤더내의 ID 필드값이 외부로 정확히 전달되지 못한다.Fourth, the first IPv4 packet generated is converted into an IPv6 packet, the packet is converted into a final IPv4 packet, and the ID field value in the first IPv4 header is not correctly transmitted to the outside when the packet is transmitted to the outside.

한국 공개특허공보 제2005-0030288호, 공개일자 2005년 03월 30일.Korean Unexamined Patent Application Publication No. 2005-0030288, published on March 30, 2005.

본 발명은 전술한 바와 같은 종래 기술의 문제점을 해결하기 위해 제안된 것으로서, IPv6 패킷을 IPv4 패킷으로 변환함에 있어서 프래그먼트가 발생하지 않은 패킷에 대해서 중복되지 않는 ID값을 IPv4 헤더에 삽입하는 패킷 변환 방법 및 장치를 제공한다.The present invention has been proposed in order to solve the problems of the prior art as described above, and it is an object of the present invention to provide a packet conversion method for inserting an ID value that is not duplicated in an IPv4 header in converting an IPv6 packet into an IPv4 packet, And an apparatus.

본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to those mentioned above, and another problem to be solved can be clearly understood by those skilled in the art from the following description.

본 발명의 일 관점에 따른 패킷 변환 방법은, IPv6 패킷에서 ID값을 추출하여 데이터베이스에 저장하는 단계와, 상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하는 단계와, 상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하는 단계와, 상기 제1 ID값 또는 상기 제2 ID값 중에서 적어도 어느 하나의 ID값을 저장하여 상기 데이터베이스를 갱신하는 단계와, 상기 ID값, 상기 제1 ID값, 또는 상기 제2 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a packet conversion method comprising: extracting an ID value from an IPv6 packet and storing the ID value in a database; generating a random first ID value when the ID packet does not exist in the IPv6 packet and the packet is a TCP sink packet Generating a second ID value that is regularly changed if the ID packet does not exist in the IPv6 packet and is not a TCP sink packet; and generating a second ID value that is at least one of the first ID value and the second ID value And storing the unique ID value in the IPv4 header to generate an IPv4 packet. The method of claim 1, further comprising: updating the database by storing the ID value, the first ID value, have.

본 발명의 다른 관점에 따른 패킷 변환 장치는, IPv6 패킷에서 ID값을 추출하는 ID 추출부와, 상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하고, 상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하는 ID 생성부와, 상기 ID 추출부에 의해 추출된 ID값, 상기 제1 ID값 또는 상기 제2 ID값 중에서 적어도 어느 하나의 ID값을 저장하는 ID 데이터베이스와, 상기 ID값, 상기 제1 ID값, 또는 상기 제2 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성하는 ID 삽입부를 포함할 수 있다.According to another aspect of the present invention, there is provided a packet conversion apparatus comprising: an ID extraction unit for extracting an ID value in an IPv6 packet; and a random ID generation unit for generating a random first ID value when the ID packet does not exist in the IPv6 packet, An ID generator for generating a second ID value that is regularly changed if the ID packet does not exist in the IPv6 packet and is not a TCP sink packet; and an ID generator for generating an ID value, the first ID value, An ID database for storing at least one ID value among the ID values, and an ID value of any one of the ID value, the first ID value, and the second ID value in an IPv4 header to generate an IPv4 packet ID insertion unit.

본 발명의 실시예에 의하면, 프래그먼트가 발생하지 않은 IPv6 패킷에 대해서 중복되지 않는 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷으로 변환한다.According to the embodiment of the present invention, an ID value which is not duplicated for an IPv6 packet in which a fragment has not been generated is inserted into an IPv4 header and is converted into an IPv4 packet.

이러한 본 발명은 다음과 같은 효과가 있다.The present invention has the following effects.

첫째, IPv4 패킷의 ID 필드값을 변화되는 값으로 채우기 때문에, 외부에서 악의적으로 분석 시에 해당 IPv4 패킷이 IPv6 패킷으로부터 변환되었음을 추정할 수 없다.First, since the ID field value of the IPv4 packet is filled with the changed value, it can not be estimated that the corresponding IPv4 packet has been converted from the IPv6 packet at the time of malicious analysis from the outside.

둘째, IPv6 패킷에서 변환된 IPv4 패킷을 이용하여 외부 서버로 TCP 접속을 시도할 경우, 외부 서버의 방화벽(보안)기능에서 DDoS 공격으로 오인지하지 않기 때문에 정상적인 서비스 접속이 가능하다.Second, if a TCP connection is attempted to an external server using an IPv4 packet converted from an IPv6 packet, normal service access is possible because the firewall function of the external server does not recognize the DDoS attack.

셋째, 변환된 IPv4 패킷 헤더 내의 ID 필드값을 랜덤한 값을 채워 넣음으로써, 다음 번에 변환될 IPv4 헤더 내의 ID 필드값에 대한 예측이 불가능하여 패킷 보안이 강화된다.Third, by filling the ID field value in the converted IPv4 packet header with a random value, it is impossible to predict the ID field value in the next IPv4 header to be converted, thereby enhancing packet security.

넷째, IPv6 패킷을 IPv4패킷으로 변환하여 외부 서버로 전송 시, 일정 횟수 혹은 일정 기간 내에 변환되어 나간 IPv4 패킷에 채워진 ID 값과 다른 값이 채워져서 외부 서버로 전달되기 때문에, IP망 전달과정에서의 패킷 역전이나 패킷 지연 시에도 최종 접속 서버에서 동일한 ID값의 수신을 방지하여, 동일 ID값으로 인한 다양한 문제점과 리스트(risk)를 예방한다.Fourth, when an IPv6 packet is converted into an IPv4 packet and then transmitted to an external server, an ID value filled in the IPv4 packet converted within a certain period or a predetermined period is filled with a value different from that of the IPv4 packet, The reception of the same ID value at the last access server is prevented even when the packet is inverted or the packet is delayed, thereby preventing various problems and risks due to the same ID value.

도 1은 본 발명의 일 실시예에 따른 패킷 변환 장치의 블록 구성도이다.
도 2는 본 발명의 일 실시예에 따른 패킷 변환 장치에 의한 패킷 변환 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 패킷 변환 장치에 의한 패킷 변환 방법에서 데이터베이스 갱신 과정을 설명하기 위한 흐름도이다.
1 is a block diagram of a packet conversion apparatus according to an embodiment of the present invention.
2 is a flowchart for explaining a packet conversion method by the packet conversion apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating a database updating process in the packet conversion method by the packet conversion apparatus according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.

도 1은 본 발명의 일 실시예에 따른 패킷 변환 장치의 블록 구성도이다.1 is a block diagram of a packet conversion apparatus according to an embodiment of the present invention.

이에 나타낸 바와 같이 일 실시예에 따른 패킷 변환 장치(100)는 ID 추출부(110), ID 데이터베이스(DataBase, DB)(120), ID 생성부(130), ID 삽입부(140)를 포함한다.As shown, the packet conversion apparatus 100 includes an ID extraction unit 110, an ID database 120, an ID generation unit 130, and an ID insertion unit 140 .

ID 추출부(110)는 IPv6 패킷에서 ID값을 추출한다. 프래그먼트가 발생한 IPv6 패킷은 확장 헤더에 ID값이 포함되어 있으며, ID 추출부(110)는 IPv6 패킷의 확장 헤더에서 ID값을 추출한다. 최초 발생된 IPv4 패킷의 경우에 프래그먼트가 되지 않은 패킷은 프래그먼트 플래그를 "no fragment"로 기록한 상태에서 프래그먼트 옵셋에 ID값을 임시로 기록할 수 있다. 이 경우라면, ID 추출부(110)는 프래그먼트가 발생하지 않은 IPv6 패킷에 대해서도 ID값을 추출할 수 있다.The ID extracting unit 110 extracts an ID value from the IPv6 packet. In the IPv6 packet in which the fragment is generated, the ID value is included in the extension header, and the ID extraction unit 110 extracts the ID value from the extension header of the IPv6 packet. In the case of the first-generated IPv4 packet, a packet that has not been fragmented can temporarily record the ID value in the fragment offset in a state in which the fragment flag is recorded as "no fragment ". In this case, the ID extracting unit 110 can extract an ID value for an IPv6 packet in which a fragment has not been generated.

ID 생성부(130)는 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하고, IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하며, 제1 ID값이 ID 데이터베이스(120) 내에 존재하면 랜덤한 제3 ID값을 다시 생성한다.The ID generator 130 generates a random first ID value if the ID packet does not exist in the IPv6 packet and the ID packet does not exist in the IPv6 packet and is not a TCP sink packet. And generates a random third ID value when the first ID value is present in the ID database 120. [

ID 데이터베이스(120)는 ID 추출부(110)에 의해 추출된 ID값, ID 생성부(130)에 의해 생성된 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 적어도 어느 하나의 ID값을 저장한다.The ID database 120 stores at least one ID value among the ID value extracted by the ID extracting unit 110, the first ID value generated by the ID generating unit 130, the second ID value, or the third ID value .

이러한 ID 데이터베이스(120)는 IPv6 패킷의 필드 중에서 송신지/목적지에 관련된 필드들을 조합하여 생성한 송신지/목적지 조합에 대응하는 큐(queue)에 ID값을 저장한다. 여기서, 송신지/목적지 조합은 IPv6 패킷의 프로토콜 번호 필드를 더 포함할 수 있다. 또, ID 데이터베이스(120)는 송신지/목적지 조합에 대응하는 큐가 존재하지 않으면 대응하는 새로운 큐를 생성하여 ID값을 저장한다. 이러한 실시예에서 ID 생성부(130)는 송신지/목적지 조합에 대응하는 큐에 저장하고자 하는 ID값과 동일한 ID값이 존재하면, 기 설정된 지정기간 또는 지정횟수 이내일 경우에 랜덤한 ID값을 다시 생성할 수 있다.The ID database 120 stores an ID value in a queue corresponding to a transmission destination / destination combination generated by combining fields related to a transmission destination / destination among fields of an IPv6 packet. Here, the transmission destination / destination combination may further include a protocol number field of the IPv6 packet. If there is no queue corresponding to the transmission destination / destination combination, the ID database 120 generates a corresponding new queue and stores the ID value. In this embodiment, when there is an ID value identical to the ID value to be stored in the queue corresponding to the transmission destination / destination combination, the ID generation unit 130 generates a random ID value when the ID value is within the designated period or the specified number of times You can regenerate it.

ID 삽입부(140)는 ID 추출부(110)에 의해 추출된 ID값, ID 생성부(130)에 의해 생성된 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성한다.The ID inserting unit 140 inserts the ID value extracted by the ID extracting unit 110, the first ID value generated by the ID generating unit 130, the second ID value, or the third ID value, Value into an IPv4 header to generate an IPv4 packet.

도 2는 본 발명의 일 실시예에 따른 패킷 변환 장치에 의한 패킷 변환 방법을 설명하기 위한 흐름도이다.2 is a flowchart for explaining a packet conversion method by the packet conversion apparatus according to an embodiment of the present invention.

이에 나타낸 바와 같이 일 실시예에 따른 패킷 변환 방법은, IPv6 패킷에서 ID값을 추출하여 데이터베이스에 저장하는 단계(S201 내지 S205)를 포함한다.As described above, the packet conversion method according to an embodiment includes steps (S201 to S205) of extracting an ID value from an IPv6 packet and storing the ID value in a database.

그리고, IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하는 단계(S207, S209)를 더 포함한다.The method further includes steps (S207 and S209) of generating a random first ID value if there is no ID value in the IPv6 packet and the packet is a TCP sink packet.

아울러, IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하는 단계(S207, S213)를 더 포함한다.The method further includes steps (S207 and S213) of generating a second ID value that changes regularly if the ID packet does not exist in the IPv6 packet and is not a TCP sink packet.

또, 제1 ID값이 데이터베이스 내에 존재하면 랜덤한 제3 ID값을 다시 생성하는 단계(S211)를 더 포함한다.If the first ID value is present in the database, step (S211) of generating a random third ID value again is performed.

이어서, 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 적어도 어느 하나의 ID값을 저장하여 데이터베이스를 갱신하는 단계(S215)를 더 포함한다.The method further includes the step of updating the database by storing at least one ID value among the first ID value, the second ID value, or the third ID value (S215).

다음으로, ID값, 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성하는 단계(S217)를 더 포함한다.The method further includes a step (S217) of generating an IPv4 packet by inserting the unique ID value of the ID value, the first ID value, the second ID value or the third ID value into the IPv4 header.

도 3은 본 발명의 일 실시예에 따른 패킷 변환 장치에 의한 패킷 변환 방법에서 데이터베이스 갱신 과정을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a database updating process in the packet conversion method by the packet conversion apparatus according to an embodiment of the present invention.

이에 나타낸 바와 같이 일 실시예에 따른 데이터베이스 갱신 과정은, IPv6 패킷의 필드 중에서 송신지/목적지에 관련된 필드들을 조합하여 생성한 송신지/목적지 조합에 대응하는 큐에 ID값을 저장하는 단계(S301)를 포함한다.As described above, the database updating process according to an exemplary embodiment includes a step S301 of storing an ID value in a queue corresponding to a transmission destination / destination combination generated by combining fields related to a transmission destination / a destination in fields of an IPv6 packet, .

그리고, ID값을 생성하여 데이터베이스를 저장할 때에 송신지/목적지 조합에 대응하는 큐가 존재하지 않으면 대응하는 새로운 큐를 생성하여 ID값을 저장하는 단계(S303 내지 S307)를 더 포함한다.If the queue corresponding to the transmission destination / destination combination does not exist when the ID value is generated and the database is stored, a step (S303 to S307) of generating a corresponding new queue and storing the ID value is performed.

또, 송신지/목적지 조합에 대응하는 큐에 저장하고자 하는 ID값과 동일한 ID값이 존재하면, 기 설정된 지정기간 또는 지정횟수 이내일 경우에 랜덤한 ID값을 다시 생성하여 송신지/목적지 조합에 대응하는 큐에 ID값을 저장하는 단계(S309 내지 S313)를 더 포함한다.If there is an ID value that is the same as the ID value to be stored in the queue corresponding to the transmission destination / destination combination, a random ID value is generated again if it is within the designated period or the specified number of times, And storing the ID value in the corresponding queue (S309 to S313).

이하, 도 1 내지 도 3을 참조하여 본 발명의 일 실시예에 따른 패킷 변환 장치에 의한 패킷 변환 방법에 대해 더 자세히 살펴보기로 한다.Hereinafter, a packet conversion method by the packet conversion apparatus according to an embodiment of the present invention will be described in more detail with reference to FIG. 1 to FIG.

먼저, IPv6 패킷이 입력되면 ID 추출부(110)는 IPv6 패킷에서 ID값을 추출한다(S201, S203).First, when an IPv6 packet is input, the ID extraction unit 110 extracts an ID value from the IPv6 packet (S201, S203).

여기서, 프래그먼트가 발생한 IPv6 패킷은 확장 헤더에 ID값이 포함되어 있으며, ID 추출부(110)는 IPv6 패킷의 확장 헤더에서 ID값을 추출한다.Here, the IPv6 packet in which the fragment is generated includes the ID value in the extension header, and the ID extraction unit 110 extracts the ID value from the extension header of the IPv6 packet.

또한, 최초 발생된 IPv4 패킷의 경우에 프래그먼트가 되지 않은 패킷은 프래그먼트 플래그를 "no fragment"로 기록한 상태에서 프래그먼트 옵셋에 ID값을 임시로 기록할 수 있다. 이 경우라면, ID 추출부(110)는 프래그먼트가 발생하지 않은 IPv6 패킷에 대해서도 ID값을 추출할 수 있다.Also, in the case of the first-generated IPv4 packet, a packet that is not fragmented can temporarily record the ID value in the fragment offset in a state in which the fragment flag is recorded as "no fragment ". In this case, the ID extracting unit 110 can extract an ID value for an IPv6 packet in which a fragment has not been generated.

이렇게, ID 추출부(110)에 의해 ID값이 추출된 경우라면, ID 데이터베이스(120)는 ID 추출부(110)에 의해 추출된 ID값을 저장한다(S205). 여기서, ID 데이터베이스(120)는 IPv6 패킷의 필드 중에서 송신지/목적지에 관련된 필드들을 조합하여 생성한 송신지/목적지 조합에 대응하는 큐에 ID값을 저장하며, 이러한 송신지/목적지 조합은 IPv6 패킷의 프로토콜 번호 필드를 더 포함할 수 있다. 예컨대, 송신지/목적지 조합은 송신지 IP 필드, 목적지 IP 필드, 송신지 포트 필드, 목적지 포트 필드, 프로토콜 번호 필드를 포함할 수 있다(S301). 예컨대, 큐에 ID값을 저장할 때에 큐의 저장 용량을 초과한 경우에는, 가장 오래된 ID값부터 삭제하고, 새로운 ID값을 저장할 수 있다.If the ID value is extracted by the ID extracting unit 110, the ID database 120 stores the ID value extracted by the ID extracting unit 110 (S205). Here, the ID database 120 stores the ID value in a queue corresponding to the transmission destination / destination combination generated by combining the fields related to the transmission destination / destination from the fields of the IPv6 packet. The transmission destination / Lt; RTI ID = 0.0 > field < / RTI > For example, the transmission destination / destination combination may include a source IP field, a destination IP field, a destination port field, a destination port field, and a protocol number field (S301). For example, when storing the ID value in the queue, if the storage capacity of the queue is exceeded, the oldest ID value can be deleted and a new ID value can be stored.

그리고, ID 삽입부(140)는 ID 추출부(110)에 의해 추출된 ID값을 IPv4 헤더에 삽입하여 생성한 IPv4 패킷을 출력한다(S217).The ID inserter 140 inserts the ID value extracted by the ID extractor 110 into the IPv4 header and outputs the generated IPv4 packet (S217).

한편, 단계 S201에서 프래그먼트가 발생하지 않은 IPv6 패킷은 ID값이 존재하지 않은 것으로 판정될 수 있으며, 이때 IP 생성부(130)는 TCP 싱크 패킷 여부를 판정한다(S207).On the other hand, in step S201, it can be determined that there is no ID value in the IPv6 packet in which no fragment is generated. In this case, the IP generating unit 130 determines whether the packet is a TCP sink packet (S207).

여기서, ID 생성부(130)는 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하고(S209), IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성한다. 예컨대, ID 생성부(130)는 ID값을 생성할 때마다 일정값씩 증가하는 값을 이용하여 고유의 제2 ID값을 생성할 수 있다(S213). 또, ID 생성부(130)는 제1 ID값이 ID 데이터베이스(120) 내에 존재하면 랜덤한 제3 ID값을 다시 생성한다(S211, S209). 예컨대, ID값은 16비트의 값으로 생성할 수 있다.If the ID value does not exist in the IPv6 packet and is not a TCP sink packet, the ID generator 130 generates a random first ID value (S209) To the second ID value. For example, the ID generation unit 130 may generate a unique second ID value using a value incremented by a constant value every time the ID value is generated (S213). If the first ID value is present in the ID database 120, the ID generation unit 130 generates a random third ID value again (S211, S209). For example, the ID value can be generated with a value of 16 bits.

그러면, ID 데이터베이스(120)는 ID 생성부(130)에 의해 생성된 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 적어도 어느 하나의 ID값을 저장하는 과정을 수행하여 갱신 처리를 한다(S215).Then, the ID database 120 stores at least one ID value among the first ID value, the second ID value or the third ID value generated by the ID generation unit 130, and performs the update process (S215).

여기서, ID 데이터베이스(120)는 ID 생성부(130)에 의해 생성된 ID값을 저장할 때에 송신지/목적지 조합에 대응하는 큐가 존재하지 않으면 대응하는 새로운 큐를 생성하여 ID값을 저장한다(S303, S305, S307). 이때, ID 생성부(130)는 송신지/목적지 조합에 대응하는 큐에 저장하고자 하는 ID값과 동일한 ID값이 존재하면(S309), 기 설정된 지정기간 또는 지정횟수 이내일 경우에 랜덤한 ID값을 다시 생성하여 저장할 수 있다(S311, S313). 하지만, ID 생성부(130)는 기 설정된 지정기간 또는 지정횟수를 벗어난 경우라면 ID값을 다시 생성하지 않고 동일한 ID값이 ID 데이터베이스(120)에 중복하여 저장되도록 한다. 이는 ID값의 중복에 의한 무한루프를 방지하기 위한 것이다.Here, when storing the ID value generated by the ID generation unit 130, the ID database 120 generates a corresponding new queue and stores the ID value if there is no queue corresponding to the transmission destination / destination combination (S303 , S305, S307). At this time, if there is an ID value identical to the ID value to be stored in the queue corresponding to the transmission destination / destination combination (S309), the ID generation unit 130 generates a random ID value May be regenerated and stored (S311, S313). However, if the ID generation unit 130 is out of the designated period or the specified number of times, the ID value is not generated again and the same ID value is stored in the ID database 120 redundantly. This is to prevent an infinite loop due to duplication of ID values.

다음으로, ID 삽입부(140)는 ID 추출부(110)에 의해 추출된 ID값, ID 생성부(130)에 의해 생성된 제1 ID값, 제2 ID값 또는 제3 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성한다(S217).Next, the ID insertion unit 140 inserts the ID value extracted by the ID extraction unit 110, the first ID value generated by the ID generation unit 130, the second ID value, or the third ID value Is inserted into the IPv4 header to generate an IPv4 packet (S217).

한편, 프래그먼트가 발생한 IPv6 패킷을 IPv4 패킷으로 변환 시, IPv6 헤더 내에 포함된 ID값을 IPv4 헤더 내에 하위의 소정 비트(예컨대, 16비트)만을 삽입 시에는, 옵션에 의해 선택적으로 단계 S307 내지 S311을 수행하지 않을 수도 있다. 또한, 단계 S307 내지 S311의 과정에서 1번의 랜덤한 ID값을 생성하여, 프래그먼트가 발생된 패킷들에 대해서 동일한 ID값을 삽입하고, ID 데이터베이스(120) 내에도 한번만 ID값을 저장할 수 있다. ID 데이터베이스(120)는 송신지/목적지 조합의 세션이 삭제되거나 소멸한 경우에는 해당 조합에 대한 큐도 삭제할 수 있다.On the other hand, when converting an IPv6 packet in which a fragment is generated to an IPv4 packet, when inserting only a predetermined lower bit (for example, 16 bits) of the ID value contained in the IPv6 header into the IPv4 header, optional steps S307 to S311 It may not be performed. Also, it is possible to generate a random ID value one time in the process of steps S307 to S311, to insert the same ID value into the packets in which fragments are generated, and to store the ID value once in the ID database 120 as well. The ID database 120 may delete the queue for the combination when the session of the transmission destination / destination combination is deleted or destroyed.

지금까지 설명한 바와 같이, 본 발명의 실시예에 따르면 프래그먼트가 발생하지 않은 IPv6 패킷에 대해서 중복되지 않는 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷으로 변환한다.As described above, according to the embodiment of the present invention, an ID value that is not duplicated for an IPv6 packet in which a fragment has not been generated is inserted into an IPv4 header and is converted into an IPv4 packet.

본 발명에 첨부된 각 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Combinations of the steps of each flowchart attached to the present invention may be performed by computer program instructions. These computer program instructions may be loaded into a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus so that the instructions, which are executed via a processor of a computer or other programmable data processing apparatus, Lt; / RTI > These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible to produce manufacturing items that contain instruction means for performing the functions described in each step of the flowchart. Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible for the instructions to perform the processing equipment to provide steps for executing the functions described in each step of the flowchart.

또한, 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the steps may occur out of order. For example, the two steps shown in succession may in fact be performed substantially concurrently, or the steps may sometimes be performed in reverse order according to the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

본 발명의 실시예에 의하면, 본 발명의 실시예에 따르면 프래그먼트가 발생하지 않은 IPv6 패킷에 대해서 중복되지 않는 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷으로 변환한다.According to an embodiment of the present invention, an ID value that is not duplicated for an IPv6 packet in which a fragment has not been generated is inserted into an IPv4 header and is converted into an IPv4 packet according to an embodiment of the present invention.

이러한 본 발명은 IPv6 클라이언트가 IPv4 서버에 접속할 수 있도록 IPv6 패킷을 Pv4 패킷으로 변환해 주어야 하는 통신 서비스에 적용할 수 있다.The present invention can be applied to a communication service for converting an IPv6 packet into a Pv4 packet so that an IPv6 client can connect to an IPv4 server.

100 : 패킷 변환 장치 110 : ID 추출부
120 : ID 데이터베이스 130 : ID 생성부
140 : ID 삽입부
100: packet converter 110: ID extractor
120 ID database 130 ID generator
140: ID insertion unit

Claims (12)

IPv6 패킷에서 ID값을 추출하여 데이터베이스에 저장하는 단계와,
상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하는 단계와,
상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하는 단계와,
상기 제1 ID값 또는 상기 제2 ID값 중에서 적어도 어느 하나의 ID값을 저장하여 상기 데이터베이스를 갱신하는 단계와,
상기 ID값, 상기 제1 ID값, 또는 상기 제2 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성하는 단계를 포함하는 패킷 변환 방법.
Extracting an ID value from an IPv6 packet and storing the ID value in a database,
Generating a random first ID value if the IPv6 packet does not have an ID value but is a TCP sink packet;
Generating a second ID value that is regularly changed if the IPv6 packet does not have an ID value and is not a TCP sink packet;
Updating the database by storing at least one ID value among the first ID value and the second ID value;
And generating an IPv4 packet by inserting the unique ID value of the ID value, the first ID value, or the second ID value into the IPv4 header.
제1 항에 있어서,
상기 제1 ID값이 상기 데이터베이스 내에 존재하면 랜덤한 제3 ID값을 다시 생성하는 단계를 더 포함하며,
상기 데이터베이스를 갱신하는 단계는, 상기 제1 ID값, 상기 제2 ID값 또는 상기 제3 ID값 중에서 적어도 어느 하나의 ID값을 저장하고,
상기 IPv4 패킷을 생성하는 단계는, 상기 ID값, 상기 제1 ID값, 상기 제2 ID값 또는 상기 제3 ID값 중에서 어느 하나의 고유 ID값을 상기 IPv4 헤더에 삽입하는 패킷 변환 방법.
The method according to claim 1,
And generating a random third ID value if the first ID value is present in the database,
Wherein the step of updating the database stores at least one ID value among the first ID value, the second ID value, and the third ID value,
Wherein the step of generating the IPv4 packet inserts a unique ID value among the ID value, the first ID value, the second ID value or the third ID value into the IPv4 header.
제1 항에 있어서,
상기 데이터베이스에 저장하는 단계는, IPv6 패킷의 필드 중에서 송신지/목적지에 관련된 필드들을 조합하여 생성한 송신지/목적지 조합에 대응하는 큐(queue)에 ID값을 저장하는 패킷 변환 방법.
The method according to claim 1,
Storing the ID value in a queue corresponding to a transmission destination / destination combination generated by combining fields related to a transmission destination / destination among fields of an IPv6 packet.
제3 항에 있어서,
상기 송신지/목적지 조합은 IPv6 패킷의 프로토콜 번호 필드를 더 포함하는 패킷 변환 방법.
The method of claim 3,
Wherein the destination / destination combination further comprises a protocol number field of an IPv6 packet.
제3 항에 있어서,
상기 데이터베이스를 갱신하는 단계는, 상기 송신지/목적지 조합에 대응하는 큐가 존재하지 않으면 대응하는 새로운 큐를 생성하여 ID값을 저장하는 패킷 변환 방법.
The method of claim 3,
The updating of the database may include generating a corresponding new queue to store an ID value if there is no queue corresponding to the transmission destination / destination combination.
제5 항에 있어서,
상기 데이터베이스를 갱신하는 단계는, 상기 송신지/목적지 조합에 대응하는 큐에 저장하고자 하는 ID값과 동일한 ID값이 존재하면, 기 설정된 지정기간 또는 지정횟수 이내일 경우에 랜덤한 ID값을 다시 생성하는 패킷 변환 방법.
6. The method of claim 5,
The updating of the database may include generating a random ID value when the ID value is the same as the ID value to be stored in the queue corresponding to the transmission destination / destination combination, Lt; / RTI >
IPv6 패킷에서 ID값을 추출하는 ID 추출부와,
상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이면 랜덤한 제1 ID값을 생성하고, 상기 IPv6 패킷에 ID값이 존재하지 않고 TCP 싱크 패킷이 아니면 규칙적으로 변화하는 제2 ID값을 생성하는 ID 생성부와,
상기 ID 추출부에 의해 추출된 ID값, 상기 제1 ID값 또는 상기 제2 ID값 중에서 적어도 어느 하나의 ID값을 저장하는 ID 데이터베이스와,
상기 ID값, 상기 제1 ID값, 또는 상기 제2 ID값 중에서 어느 하나의 고유 ID값을 IPv4 헤더에 삽입하여 IPv4 패킷을 생성하는 ID 삽입부를 포함하는 패킷 변환 장치.
An ID extracting unit for extracting an ID value from an IPv6 packet,
Generates a random first ID value if the ID packet does not exist in the IPv6 packet but is a TCP sink packet and generates a second ID value that changes regularly if the ID packet does not exist in the IPv6 packet and is not a TCP sink packet An ID generation unit,
An ID database for storing at least one ID value among the ID value extracted by the ID extracting unit, the first ID value or the second ID value,
And an ID inserter for inserting the unique ID value of the ID value, the first ID value, or the second ID value into an IPv4 header to generate an IPv4 packet.
제7 항에 있어서,
상기 ID 생성부는, 상기 제1 ID값이 상기 ID 데이터베이스 내에 존재하면 랜덤한 제3 ID값을 다시 생성하며,
상기 ID 데이터베이스는, 상기 제1 ID값, 상기 제2 ID값 또는 상기 제3 ID값 중에서 적어도 어느 하나의 ID값을 저장하고,
상기 ID 삽입부는, 상기 ID값, 상기 제1 ID값, 상기 제2 ID값 또는 상기 제3 ID값 중에서 어느 하나의 고유 ID값을 상기 IPv4 헤더에 삽입하는 패킷 변환 장치.
8. The method of claim 7,
The ID generator may generate a random third ID value if the first ID value is present in the ID database,
Wherein the ID database stores at least one ID value among the first ID value, the second ID value, or the third ID value,
Wherein the ID inserting unit inserts a unique ID value of the ID value, the first ID value, the second ID value or the third ID value into the IPv4 header.
제7 항에 있어서,
상기 ID 데이터베이스는, IPv6 패킷의 필드 중에서 송신지/목적지에 관련된 필드들을 조합하여 생성한 송신지/목적지 조합에 대응하는 큐(queue)에 ID값을 저장하는 패킷 변환 장치.
8. The method of claim 7,
The ID database stores an ID value in a queue corresponding to a transmission destination / destination combination generated by combining fields related to a transmission destination / destination among fields of an IPv6 packet.
제9 항에 있어서,
상기 송신지/목적지 조합은 IPv6 패킷의 프로토콜 번호 필드를 더 포함하는 패킷 변환 장치.
10. The method of claim 9,
Wherein the destination / destination combination further comprises a protocol number field of an IPv6 packet.
제9 항에 있어서,
상기 ID 데이터베이스는, 상기 송신지/목적지 조합에 대응하는 큐가 존재하지 않으면 대응하는 새로운 큐를 생성하여 ID값을 저장하는 패킷 변환 장치.
10. The method of claim 9,
Wherein the ID database generates a corresponding new queue to store the ID value if the queue corresponding to the transmission destination / destination combination does not exist.
제11 항에 있어서,
상기 ID 생성부는, 상기 송신지/목적지 조합에 대응하는 큐에 저장하고자 하는 ID값과 동일한 ID값이 존재하면, 기 설정된 지정기간 또는 지정횟수 이내일 경우에 랜덤한 ID값을 다시 생성하는 패킷 변환 장치.
12. The method of claim 11,
The ID generation unit may generate a random ID value when the ID value is the same as the ID value to be stored in the queue corresponding to the transmission destination / destination combination, Device.
KR1020150115529A 2015-08-17 2015-08-17 Method and apparatus for translation of packet data KR102112317B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150115529A KR102112317B1 (en) 2015-08-17 2015-08-17 Method and apparatus for translation of packet data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150115529A KR102112317B1 (en) 2015-08-17 2015-08-17 Method and apparatus for translation of packet data

Publications (2)

Publication Number Publication Date
KR20170021121A true KR20170021121A (en) 2017-02-27
KR102112317B1 KR102112317B1 (en) 2020-05-18

Family

ID=58315755

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150115529A KR102112317B1 (en) 2015-08-17 2015-08-17 Method and apparatus for translation of packet data

Country Status (1)

Country Link
KR (1) KR102112317B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021085884A1 (en) * 2019-10-29 2021-05-06 삼성전자 주식회사 Method for reducing dns query-response time, and electronic device for supporting same
KR20220157560A (en) 2021-05-21 2022-11-29 (주)전진 Urea tank for diesel vehicle

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141513A1 (en) * 2003-01-10 2004-07-22 Ryuichi Takechi Address translation device
KR20050030288A (en) 2003-09-25 2005-03-30 삼성전자주식회사 Apparatus and method for converting the version of ip packet
JP2008277884A (en) * 2007-04-25 2008-11-13 Oki Electric Ind Co Ltd Packet conversion device, method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141513A1 (en) * 2003-01-10 2004-07-22 Ryuichi Takechi Address translation device
KR20050030288A (en) 2003-09-25 2005-03-30 삼성전자주식회사 Apparatus and method for converting the version of ip packet
JP2008277884A (en) * 2007-04-25 2008-11-13 Oki Electric Ind Co Ltd Packet conversion device, method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021085884A1 (en) * 2019-10-29 2021-05-06 삼성전자 주식회사 Method for reducing dns query-response time, and electronic device for supporting same
KR20220157560A (en) 2021-05-21 2022-11-29 (주)전진 Urea tank for diesel vehicle

Also Published As

Publication number Publication date
KR102112317B1 (en) 2020-05-18

Similar Documents

Publication Publication Date Title
US7058718B2 (en) Blended SYN cookies
US7675854B2 (en) System and method for an adaptive TCP SYN cookie with time validation
KR100834570B1 (en) Realtime stateful packet inspection method and apparatus for thereof
US20050240989A1 (en) Method of sharing state between stateful inspection firewalls on mep network
EP2632089A1 (en) Name-database server, name-resolution system, entry-search method, and entry-search program
US10397111B2 (en) Communication device, communication system, and communication method
US20130104228A1 (en) Stealth network node
KR20110061784A (en) Method and apparatus for preventing network attacks, method and apparatus for processing transmission and receipt of packet comprising the same
CN105991655B (en) Method and apparatus for mitigating neighbor discovery-based denial of service attacks
US20160173452A1 (en) Multi-connection system and method for service using internet protocol
EP2632090A1 (en) Name-database server, name-resolution system, entry-search method, and entry-search program
CN1332552A (en) Network address conversion gateway of local network using local IP address and untranslated port address
US11876786B2 (en) Protocol obfuscation in moving target defense
JP2020017809A (en) Communication apparatus and communication system
EP3442195A1 (en) Method and device for parsing packet
CN114338510B (en) Data forwarding method and system for controlling and forwarding separation
KR20170021121A (en) Method and apparatus for translation of packet data
KR101772681B1 (en) Firewall Apparatus and Driving Method Thereof
CN113347198B (en) ARP message processing method, device, network equipment and storage medium
CN103746768A (en) Data packet identification method and equipment thereof
CN104660591A (en) Covert communication method used for packet length feedback network and based on IP (internet protocol) address
US11128602B2 (en) Efficient matching of feature-rich security policy with dynamic content using user group matching
CN106789666B (en) Method and device for determining converted port
CN105471839B (en) A kind of method for judging router data and whether being tampered
US20130133060A1 (en) Communication system, control device and control program

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant