KR20060088752A - 아이피 버전 6 패킷 처리 장치 및 방법 - Google Patents

아이피 버전 6 패킷 처리 장치 및 방법 Download PDF

Info

Publication number
KR20060088752A
KR20060088752A KR1020050009708A KR20050009708A KR20060088752A KR 20060088752 A KR20060088752 A KR 20060088752A KR 1020050009708 A KR1020050009708 A KR 1020050009708A KR 20050009708 A KR20050009708 A KR 20050009708A KR 20060088752 A KR20060088752 A KR 20060088752A
Authority
KR
South Korea
Prior art keywords
header
packet
ipv6
extension
ipv6 packet
Prior art date
Application number
KR1020050009708A
Other languages
English (en)
Other versions
KR100666948B1 (ko
Inventor
김봉찬
강병창
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020050009708A priority Critical patent/KR100666948B1/ko
Publication of KR20060088752A publication Critical patent/KR20060088752A/ko
Application granted granted Critical
Publication of KR100666948B1 publication Critical patent/KR100666948B1/ko

Links

Images

Classifications

    • 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/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • 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/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]

Landscapes

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

Abstract

본 발명은 IPv6 패킷의 처리를 위한 것으로, 패킷 필터링 또는 QoS 기능을 위해 요구되는 정보들을 포함하는 확장 헤더를 생성하여 IPv6 기본 헤더의 바로 뒤에 부가함으로써, 번거로운 정보 검색 과정 없이 패킷 처리를 위해 요구되는 정보를 용이하게 검색할 수 있도록 하는 IPv6 패킷 처리 장치 및 방법에 관한 것이다.
IPv6(Internet Protocol version 6), 패킷 처리, 포워딩(forwarding), 확장 헤더, classification header

Description

아이피 버전 6 패킷 처리 장치 및 방법{APPARATUS AND METHOD FOR PROCESSING IPV6 PACKET}
도 1은 일반적인 IPv6(Internet Protocol Version 6) 패킷의 헤더 포맷을 도시하는 도면.
도 2는 일반적인 IPv6 패킷의 확장(extension) 헤더들 중 라우팅 확장 헤더의 포맷을 도시하는 도면.
도 3은 패킷의 식별을 위한 넥스트 헤더 사용예를 도시하는 도면.
도 4는 송신자가 송신하고자 하는 원래 패킷의 포맷을 도시하는 도면.
도 5는 그 크기가 MTU(Maximum Transmission Unit)보다 큰, 도 4에 도시된 형태의 원래 패킷을 MTU 단위로 분할한 분할 패킷들의 포맷을 도시하는 도면.
도 6은 classification 확장 헤더의 기본 포맷을 도시하는 도면.
도 7은 TCP(Transmission Control Protocol)를 위한 classification 확장 헤더의 포맷을 도시하는 도면.
도 8은 UDP(User Datagram Protocol)를 위한 classification 확장 헤더의 포맷을 도시하는 도면.
도 9는 ICMP(Internet Control Message Protocol)를 위한 classification 확 장 헤더의 포맷을 도시하는 도면.
도 10a는 본 발명에 따른 변형이 이루어지기 전의 패킷 포맷을 도시하는 도면.
도 10b는 본 발명에 따른 클래시피케이션 확장 헤더(1000)의 생성 및 생성된 클래시피케이션 확장 헤더의 부가 과정을 도시하는 도면.
도 10c는 본 발명에 따른, 클래시피케이션 확장 헤더를 포함하는 패킷 포맷을 도시하는 도면.
도 11은 본 발명에 따른 네트워크 구성요소가 수신할 수 있는, 클래시피케이션 확장 헤더를 포함하는 패킷의 포맷을 도시하는 도면.
본 발명은 네트워크 구성요소에서의 IPv6 패킷 처리를 수행하는 IPv6(Internet Protocol version 6) 패킷 처리 장치 및 방법에 관한 것으로, 특히 IPv6 패킷의 처리를 위해 요구되는 정보의 검색을 용이하게 하는 IPv6 패킷 처리 장치 및 방법에 관한 것이다.
IPv6 패킷을 처리하는 네트워크 구성요소들 중 특히 피킷 필터링이나 QoS(Quality of Service) 기능을 수행하는 네트워크 구성요소들(예를 들어, 라우터, 방화벽 등)은, 일반적으로 패킷의 처리를 위해 수신한 패킷의 각 프로토콜 헤 더에서 다음과 같은 정보들을 검색하게 된다.
IPv6 기본 헤더에서는 소스 어드레스(Source IPv6 address), 목적지 어드레스(Destination IPv6 address), 트래픽 등급(Traffic Class) 및 흐름 라벨(Flow Label) 정보가 검색된다. ICMP(Internet Control Message Protocol) 헤더에서는 ICMP 타입 값이 검색된다. TCP/UDP(Transmission Control Protocol/User Datagram Protocol) 헤더에서는 소스 포트(Source port) 값, 목적지 포트(Destination port) 값 및 TCP 제어 비트(TCP Control Bits) 값이 검색된다. 마지막으로, 해당 패킷이 분할된 패킷인지의 여부를 확인하기 위해 분할 확장 헤더(fragment extension header)의 존재 여부가 검색된다.
이러한 정보들의 검색에 대해 설명하기 위해 먼저 IPv6 패킷의 헤더의 구성에 대해 설명하도록 한다. 하기에서 기술하는 IPv6 헤더의 포맷은 RFC 2460에 정의되어 있다.
도 1은 일반적인 IPv6(Internet Protocol Version 6) 패킷의 기본 헤더 포맷을 도시하는 도면이다.
도 1에 도시된 바와 같이, IPv6 패킷의 헤더(100)는 버전(version) 필드(102), 트래픽 분류(traffic class) 필드(104), 흐름 라벨(Flow Label) 필드(106), 페이로드 길이(payload length) 필드(108), 넥스트 헤더(Next Header) 필드(110), 홉 리미트(Hop Limit) 필드(112), 소스 어드레스(source address) 필드(114) 및 목적지 어드레스(destination address) 필드(116)를 포함하도록 구성될 수 있다. 이들 필드들에 대해 상세히 설명하면 다음과 같다.
버전 필드(102)는 해당 패킷의 프로토콜 버전을 나타낸다. IPv6의 경우 버전필드(102)는 "6"을 나타낸다. 트래픽 분류 필드(104) 및 흐름 라벨 필드(106)는 모두 QoS를 제공하기 위한 필드들이다. 트래픽 분류 필드(104)는 상위 계층(upper layer)에서 설정하거나 읽을 수 있다는 점 때문에 TCP(Transmission Control Protocol), UDP(User Datagram Protocol) 등의 상위 계층의 어플리케이션 QoS를 IP 계층이 하위의 전송 계층에게 요구하는 경우에 사용될 수 있다. 흐름 라벨 필드(106)는 트래픽 분류 필드(104)의 값을 받아서 이를 송신자로부터 수신자까지의 모든 라우터들에서 만족하기 위해 지정하는 것이다. 물론, RSVP(ReSerVation Protocol) 등이 미리 모든 라우터를 훑으면서 흐름 라벨을 설정해야 한다. 즉, 흐름 라벨이 일단 설정된다는 것은 소정의 QoS를 만족하는 가상 경로가 만들어졌다는 의미가 된다.
페이로드 길이 필드(108)는 IPv6 헤더, 즉 IPv6 기본 헤더 뒤에 따라오는 모든 페이로드의 바이트 수를 의미한다. 여기서 주의할 점은, 목적지 어드레스 필드(116) 이후에 부가될 수도 있는 옵션(option) 필드 또는 확장(extension) 필드 값 역시 페이로드로 간주된다는 점이다. 즉, 여기서는 IPv6 헤더를 제외한 모든 헤더들과 데이터가 페이로드가 된다.
넥스트 헤더 필드(110)는 목적지 어드레스 필드(116) 뒤에 따라오는 옵션 헤더의 타입을 결정한다. 예를 들어, 넥스트 헤더 필드(110)의 값이 "0"이면, IPv6 헤더 뒤에는 Hop-by-Hop 옵션 확장 헤더가 따라오게 되며, "1"은 뒤에 오는 헤더가 ICMP(Internet Control Message Protocol) 확장 헤더임을 알리는 넥스트 헤더 필드 의 값이고, "6"은 뒤에 오는 헤더가 TCP(Transmission Control Protocol) 헤더임을 알리는 넥스트 헤더 필드의 값이다. 넥스트 헤더 필드(110)가 표시하는, 다음에 올 헤더들의 타입들은 다음의 표 1과 같이 정리할 수 있다.
헤더 타입 설명
Hop-by-Hop 옵션 0 뒤에 오는 헤더가 Hop-by-Hop 옵션임을 알림. Hop-by-Hop 옵션은 송신자로부터 수신자까지 가는 동안 거치게 되는 모든 라우터들이 확인해야 하는 옵션.
IP(Internet Protocol) 4 뒤에 오는 헤더가 IPv4 헤더임을 알림. 이 값을 쓰면 IPv6 패킷으로 IPv4 패킷을 보내고 받을 수가 있다.
TCP(Transmission Control Protocol) 6 뒤에 오는 헤더는 TCP 헤더임을 알림.
UDP(User Datagram Protocol) 17 뒤에 오는 헤더가 UDP 헤더임을 알림.
IPv6 41 뒤에 오는 헤더가 IPv6 헤더임을 알림. IPv6로 IPv6를 보내는 경우에 사용.
Routing 43 뒤에 오는 헤더가 라우팅 헤더임을 알림. 라우팅 헤더는 IPv4에 있던 Loose Source Routing(송신자로부터 수신자까지의 경로(path) 중에서 어떤 라우터는 꼭 거쳐가라고 지정하는 것)을 구현함.
조각(Fragment) 44 Path-MTU가 작아서 패킷을 잘라보내야 하는 경우에 사용.
Inter-Domain Routing 45 라우팅 프로토콜 헤더가 온다.
RSVP(Reservation Protocol) 46 RSVP를 사용하는 경우.
ESP(Encapsulating Security Payload) 50 보안사항을 위함. IPSec에 정의됨.
AH(Authentication Header) 51 보안사항을 위함. IPSec에 정의됨.
ICMP(Internet Control Message Protocol) 58 뒤에 오는 헤더가 ICMP 헤더임을 알림.
59 뒤에 오는 헤더가 없음을 알림.
수신자 옵션 60 오로지 수신자만 확인해야 하는 옵션.
홉 리미트 필드(112)는 라우터를 하나 거칠 때마다 1씩 줄어드는 값으로, IPv4의 TTL(Time To Live) 값과 유사하다. 홉 리미트 필드(112)의 값이 0이 되면 해당 라우터에서 "ICMP Time Exceeded" 메시지가 발생하게 된다.
소스 어드레스 필드(114) 및 목적지 어드레스 필드(116)는 해당 패킷의 소스 어드레스와 목적지 어드레스를 나타낸다.
이상의, 도 1에 도시된 IPv6 헤더를 특히 "IPv6 기본 헤더"라 하며, 기본 헤더 다음에 확장 헤더들이 부가될 수 있다. 하기에서는 첨부한 도면을 참조하여 확장 헤더에 대해 설명하도록 한다.
도 2는 IPv6 라우팅 확장 헤더의 포맷을 보이는 도면이다.
도 2에 도시된 바와 같이 IPv6 라우팅 확장 헤더(200)는 넥스트 헤더 필드(202), 헤더 길이 필드(204), 라우팅 타입 필드(206), 세그먼트 레프트 필드(208) 및 타입에 따른 특정 데이터 필드(210)를 포함하도록 구성될 수 있다. 다른 확장 헤더들 역시 도 2에 도시된 포맷과 유사한 포맷으로 구성될 수 있는데, 라우팅 타입 필드(206) 및 타입에 따른 특정 데이터 필드(210)가 해당하는 프로토콜에 따라 다르게 구성된다. 상기 각각의 필드들에 대한 설명은 생략하도록 한다.
현재 IPv6 기본 헤더 뒤에 위치할 수 있는 확장 헤더들로는 홉-바이-홉 옵션(Hop-by-Hop Options) 헤더, 라우팅 헤더(Routing) 헤더, 분할(Fragment) 헤더, 목적지 옵션(Destination Options) 헤더, 인증(Authentication) 헤더, 인캡슐레이션 시큐리티 페이로드(Encapsulating Security Payload) 헤더 등이 있으며, IPv6 기본 헤더 뒤에 추가될 수 있는 확장 헤더의 개수에는 특별한 제약이 없다. 이들 확장 헤더들은 자신의 바로 뒤에 위치하는 확장 헤더나 기타 다른 프로토콜 헤더의 타입을 나타내기 위해 공통적으로 헤더의 처음 8비트를 넥스트 헤더 필드로 사용하고 있다.
그런데, 패킷(IPv6 패킷, 이하 "패킷"이라 칭하기로 한다)에 여러 개의 확장 헤더가 포함되는 경우, 상기 패킷을 전송하는 네트워크 구성요소들은 해당 패킷의 처리를 위해 각 헤더들의 넥스트 헤더 필드들을 순차적으로 확인하여 원하는 헤더를 찾아야 한다. 이를 첨부한 도 3을 참조하여 설명하면 다음과 같다.
도 3은 패킷의 식별을 위한 넥스트 헤더 사용예를 도시하는 도면이다.
네트워크 구성요소는, 도 3에 도시된 구성을 가지는 패킷을 수신하는 경우, TCP 헤더(306) 내의 정보를 검색하기 위해서는 IPv6 기본 헤더(100), 홉-바이-홉 옵션 A 헤더(300), 홉-바이-홉 옵션 B 헤더(302), 라우팅 A 헤더(304)의 넥스트 헤더 필드를 순차적으로 검색하여야 한다. 이와 같은 종래기술에 따른 헤더 정보 검색은, 직접적으로 필요하지 않은 헤더들까지 검색해야 하므로 패킷 처리의 효율성을 저하시키게 된다.
한편, 생성된 패킷의 길이가 목적지까지 거쳐 가야될 링크들의 최소 MTU 값보다 큰 경우, 상기 패킷을 송신하는 호스트 시스템은 상기 패킷을 최소 MTU 값보다 작은 크기로 분할(fragmentation)해서 전송하게 되는데, 이러한 패킷의 분할 시에 각 패킷에 포함된 확장 헤더들은 더 큰 문제가 될 수 있다. 분할로 인한 문제를 설명하기에 앞서, 먼저 패킷의 분할에 대해 설명하기로 한다.
도 4는 송신자가 송신하고자 하는 원래 패킷의 포맷을 도시하는 도면이다.
도 4에 도시된 바와 같이, 분할 시에 패킷은 분할 불가능한 부분(400)과 분할 가능한 부분(410으로 고려될 수 있다. 분할 불가능한 부분(400)은 네트워크 시스템들을 통한 패킷의 전송 시에 필수적인 부분이고, 분할 가능한 부분(410)은 송신자 또는 수신자에서만 고려되는 부분이다. 패킷에서 분할 불가능한 부분(400)의 예로는 기본 헤더(100) 및 확장 헤더(200)를 들 수 있고, 분할 가능한 부분(410)의 예로는 TCP 헤더(400) 및 데이터(412)를 들 수 있다. 패킷의 분할을 첨부한 도면을 참조하여 설명하도록 한다. 하기에서는 분할 전의 패킷을 "원래 패킷"이라고 칭하고, 분할 후의 패킷을 "분할된 패킷"이라고 칭하기로 한다.
도 5는 그 크기가 MTU(Maximum Transmission Unit)보다 큰, 도 4에 도시된 형태의 원래 패킷을 MTU 단위로 분할한 분할 패킷들의 포맷을 도시하는 도면이다.
분할 불가능한 부분(400)은 모든 분할된 패킷에 포함되어야 한다. 도 5에서는 IPv6 기본 헤더(100)와 라우팅 헤더(200)가 분할 불가능한 부분(400)이다. 또한, 분할된 패킷은 분할 정보를 포함하는 분할 헤더(fragment header)(500)를 포함하여야 한다. 분할 헤더는 해당 분할된 패킷의 원래 패킷이 어떤 패킷인지, 분할된 패킷이 원래 패킷에서 몇 번째 부분에 해당하는지 등의 정보를 포함할 수 있다.
이와 같은 패킷의 분할 시에 확장헤더들로 인해 발생하는 문제점에 대해 기술하면 다음과 같다. 예를 들어, TCP 헤더(400)는 분할 가능한 부분(410)에 포함된다. TCP 헤더(400)는 첫 번째의 분할된 패킷에만 포함되고 그 이후의 분할된 패킷에는 포함되지 않는다. 따라서, 네트워크 구성요소는 분할된 패킷의 처리를 위해 두 가지 규칙을 적용하거나, 첫 번째 분할된 패킷으로부터 획득한 정보를 내부적으로 저장하였다가 다른 분할된 패킷들에 적용하는 방법을 사용하여 패킷을 처리하고 있다. 그러나 두 가지 규칙을 적용하는 방법은 규칙을 잘못된 패킷에 적용할 수 있다는 문제점이 발생할 수 있고, 획득한 정보를 내부적으로 저장하는 방법은 헤더 정보들을 내부적으로 항상 관리하고 있어야 하며 분할된 패킷을 일일이 저장 된 정보들과 비교함으로써 성능의 저하를 유발할 수 있게 된다.
따라서 본 발명의 목적은 네트워크 구성요소가 IPv6 패킷을 처리하기 위해 요구되는 정보들을 IPv6 패킷으로부터 용이하게 검색할 수 있도록 하는 IPv6 패킷 처리 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 네트워크 구성요소가 분할된 IPv6 패킷을 처리하기 위해 요구되는 정보를 용이하게 검색할 수 있도록 하는 IPv6 패킷 처리 장치 및 방법을 제공함에 있다.
이와 같은 목적들을 달성하기 위해 본 발명은; IPv6 패킷 처리 장치에 있어서, 전송할 IPv6 패킷을 생성하는 패킷 생성부와, 상기 IPv6 패킷의 처리를 위해 요구되는 정보를 포함하는 클래시피케이션 확장 헤더를 생성하는 헤더 생성부와, 상기 생성된 클래시피케이션 확장 헤더를 상기 IPv6 패킷의 기본 헤더의 바로 뒤에 포함시켜 전송하는 패킷 전송부를 포함함을 특징으로 하는 IPv6 패킷 처리 장치를 제안한다.
또 본 발명은; IPv6 패킷 처리 장치에 있어서, 수신한 IPv6 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷이면 상기 클래시피케이션 확장 헤더에 포함된 정보를 검색하는 정보 검색부와, 상기 정보 검색부가 검색한 정보를 사용하여 상기 수신한 패킷을 처리하는 패킷 처리부를 포함함을 특징으로 하는 IPv6 패킷 처리 장치를 제안한다.
또 본 발명은; IPv6 패킷 처리 방법에 있어서, 전송할 IPv6 패킷을 생성하는 제 1 과정과, 상기 IPv6 패킷의 처리를 위해 요구되는 정보를 포함하는 클래시피케이션 확장 헤더를 생성하는 제 2 과정과, 상기 생성된 클래시피케이션 확장 헤더를 상기 IPv6 패킷의 기본 헤더의 바로 뒤에 포함시켜 전송하는 제 3 과정을 포함함을 특징으로 하는 IPv6 패킷 전송 방법을 제안한다.
또 본 발명은; IPv6 패킷 처리 방법에 있어서, IPv6 패킷을 수신하는 제 1 과정과, 상기 수신한 IPv6 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷인지 판단하고, 상기 수신한 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷이면 상기 클래시피케이션 확장 헤더에 포함된 정보를 검색하는 제 2 과정과, 상기 클래시피케이션 확장 헤더로부터 검색한 정보를 사용하여 상기 수신한 패킷을 처리하는 제 3 과정을 포함함을 특징으로 하는 IPv6 패킷 처리 방법을 제안한다.
이하 본 발명의 바람직한 실시예들을 첨부된 도면의 참조와 함께 상세히 설명한다. 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
이하 기술하는 본 발명은 패킷의 처리를 위해 요구되는 정보를 포함하는 새로운 헤더를 IPv6 기본 헤더의 바로 뒤에 추가함을 특징으로 한다. 하기에서는 본 발명을 위해 사용되는 헤더, 상기 헤더를 포함하는 IPv6 패킷을 송신자로부터 수신 자까지 전송하기 위한 전송 장치 및 그 전송방법에 대해 기술하도록 한다. 상기 헤더를 포함하는 IPv6 패킷의 전송에는 상기 헤더의 생성 및 상기 헤더를 사용한 정보의 추출이 적어도 포함된다.
먼저 본 발명을 위해 사용되는 새로운 헤더(이하 "클래시피케이션 확장 헤더(Classification extension header)"라 칭하기로 한다)에 대해 기술하도록 한다.
도 6은 클래시피케이션 확장 헤더의 기본 포맷을 도시하는 도면이다.
도 6에 도시된 바와 같이, 본 발명에 따른 클래시피케이션 확장 헤더는, RFC2460에 정의된 확장 헤더의 포맷을 응용한 포맷을 가질 수 있다.
하기의 표 2는 도 6에 도시된 각 필드들에 대해 설명하고 있다.
Figure 112005006378306-PAT00001
상기 클래시피케이션 확장 헤더는 IPv6 기본 헤더의 바로 뒤에 위치하여야 한다.
도 6에 도시된 기본 형태의 클래시피케이션 확장 헤더를 참조하여 몇 가지 실시예에 따른 클래시피케이션 확장 형태의 포맷을 설명하면 다음과 같다.
도 7은 TCP를 위한 클래시피케이션 확장 헤더의 포맷을 도시하는 도면이다.
하기의 표 3은 도 7에 도시된, 프로토콜 값이 6인 경우, 즉 TCP 프로토콜을 위한 클래시피케이션 확장 헤더의 각 필드들에 대해 설명하고 있다.
Figure 112005006378306-PAT00002
도 8은 UDP를 위한 클래시피케이션 확장 헤더의 포맷을 도시하는 도면이다.
하기의 표 4는 도 8에 도시된, 프로토콜 값이 17인 경우, 즉 UDP 프로토콜을 위한 클래시피케이션 확장 헤더의 각 필드들에 대해 설명하고 있다.
Figure 112005006378306-PAT00003
도 9는 ICMP를 위한 클래시피케이션 확장 헤더의 포맷을 도시하는 도면이다.
하기의 표 5는 도 9에 도시된, 프로토콜 값이 1인 경우, 즉 ICMP 프로토콜을 위한 클래시피케이션 확장 헤더의 각 필드들에 대해 설명하고 있다.
Figure 112005006378306-PAT00004
다음으로 본 발명에 따른, 전술한 클래시피케이션 확장 헤더를 사용한 패킷 처리에 대해 설명하도록 한다. 본 발명에 따른 패킷 처리는 네트워크 구성요소의 종류에 따라 4가지로 구분되어 설명될 수 있다. 본 발명에 따른 네트워크 구성요소의 종류 구분은 송신자, 패킷 필터링 또는 QoS를 수행하는 네트워크 구성요소, 패킷 필터링 또는 QoS를 수행하지 않는 네트워크 구성요소 및 송신자로 이루어질 수 있다.
먼저 송신자에 대해 설명하도록 한다. 송신자는 패킷을 생성하여 전송하는 네트워크 구성요소이다.
① 송신자는 전송할 패킷을 생성한다.
② 송신자는 본 발명에 따른 클래시피케이션 확장 헤더를 생성한다. 여기서, 클래시피케이션 확장 헤더는 IPv6 기본 헤더와 확장 헤더들 뒤에 위치하는 헤더와 타입에 따라 이루어진다.
③ 송신자는 IPv6 기본 헤더와 확장 헤더들 뒤에 위치하는 헤더의 내용을 새로 생성한 클래시피케이션 확장 헤더에 복사한다.
④ 송신자는 생성된 클래시피케이션 확장 헤더를 IPv6 기본 헤더 바로 뒤에 위치시킨다.
이들 과정은 도 10a 내지 도 10c에 도시되어 있다. 도 10a는 본 발명에 따른 변형이 이루어지기 전의 패킷 포맷이고, 도 10b는 본 발명에 따른 클래시피케이션 확장 헤더(1000)의 생성 및 생성된 클래시피케이션 확장 헤더의 부가 과정을 도시하는 도면이고, 도 10c는 본 발명에 따른, 클래시피케이션 확장 헤더를 포함하는 패킷 포맷을 도시하는 도면이다.
이를 위해 송신자는 전송할 패킷을 생성하는 패킷 생성부와, 상기 생성된 패킷을 참조하여 클래시피케이션 확장 헤더(1000)를 생성하는 헤더 생성부 및 생성된 헤더를 포함하는 패킷을 전송하는 패킷 전송부를 적어도 포함할 수 있다.
두 번째로, 패킷 필터링 또는 QoS를 수행하는 네트워크 구성요소에 대해 설명하도록 한다.
도 11은 본 발명에 따른 네트워크 구성요소가 수신할 수 있는, 클래시피케이션 확장 헤더를 포함하는 패킷의 포맷을 도시하는 도면이다.
도 11에 도시된 바와 같은 형태의 패킷을 수신한, 패킷 필터링 또는 QoS를 수행하는 네트워크 구성요소는, IPv6 기본 헤더(100) 내에서 필요한 정보를 검색하고, 클래시피케이션 확장 헤더(1000) 내에서 프로토콜 필드(604)의 값에 따라 필요한 정보를 검색하며, 내부적으로 가지고 있는 필터링 또는 클래시피케이션 규칙과 상기 검색한 정보를 비교하여 요구되는 패킷 처리(예를 들어, permit/drop, QoS 기능 수행 등)를 수행한다. 이를 위해 패킷 필터링 또는 QoS를 수행하는 네트워크 구성요소는, 클래시피케이션 확장 헤더(1000)가 포함된 패킷을 수신하는 경우, 상기 클래시피케이션 확장 헤더(1000)로부터 해당 패킷을 처리하기 위한 정보를 검색하는 정보 검색부 및 상기 검색된 정보에 따라 해당 패킷을 처리하는 패킷 처리부를 적어도 포함한다.
세 번째로, 패킷 필터링 또는 QoS를 수행하지 않는 네트워크 구성요소에 대해 설명하도록 한다. 이러한 시스템은 송신자와 수신자 사이에서 패킷을 포워딩(forwarding)하는 역할만을 수행한다. 이러한 네트워크 구성요소는 수신한 패킷의 클래시피케이션 확장 헤더(1000)를 무시하고 그 다음의 확장 헤더를 검색하게 된다.
마지막으로 수신자에 대해 설명하도록 한다. 수신자는 해당 패킷의 목적지에 해당한다. 수신자는 패킷을 수신하면, 클래시피케이션 확장 헤더(1000) 내에 저장되어 잇는 프로토콜 특정 데이터(610) 값과 실제 해당 프로토콜 헤더 내의 값이 동일한지를 비교한다. 동일하지 않는 경우, 수신자는 해당 패킷을 드롭(drop)시킨다. 수신자가 이렇게 동작을 하는 이유는 송신자가 방화벽이나 라우터가 제공하는 패킷 필터링 또는 QoS 기능에 제약을 받지 않을 목적으로 고의로 클래시피케이션 확장 헤더(1000)를 수정하는 것을 차단하기 위해서이다.
본 발명은 패킷 필터링이나 QoS 기능 등과 같은 패킷 처리를 위해 요구되는 정보들의 검색을 용이하게 수행할 수 있도록 한다.

Claims (10)

  1. IPv6 패킷 처리 장치에 있어서,
    전송할 IPv6 패킷을 생성하는 패킷 생성부와,
    상기 IPv6 패킷의 처리를 위해 요구되는 정보를 포함하는 클래시피케이션 확장 헤더를 생성하는 헤더 생성부와,
    상기 생성된 클래시피케이션 확장 헤더를 상기 IPv6 패킷의 기본 헤더의 바로 뒤에 포함시켜 전송하는 패킷 전송부를 포함하는 IPv6 패킷 처리 장치.
  2. 제 1항에 있어서,
    상기 헤더 생성부는 상기 IPv6 패킷의 기본 헤더 및 확장 헤더들 뒤에 위치하는 헤더의 프로토콜 타입 및 상기 프로토콜 타입에 따른 정보를 포함하도록 상기 클래시피케이션 헤더를 생성하는 IPv6 패킷 처리 장치.
  3. 제 2항에 있어서,
    상기 IPv6 패킷의 기본 헤더 및 확장 헤더들 뒤에 위치하는 헤더는 TCP(Transmission Control Protocol) 헤더, UDP(User Datagram Protocol) 헤더, ICMP(Internep Control Message Protocol) 헤더 중의 하나인 IPv6 패킷 처리 장치.
  4. 제 1항에 있어서, 상기 클래시피케이션 확장 헤더에 포함된 정보를 요구하는 패킷 처리는 패킷 필터링 또는 QoS(Quality of Service) 기능인 IPv6 패킷 처리 장치.
  5. IPv6 패킷 처리 장치에 있어서,
    수신한 IPv6 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷이면 상기 클래시피케이션 확장 헤더에 포함된 정보를 검색하는 정보 검색부와,
    상기 정보 검색부가 검색한 정보를 사용하여 상기 수신한 패킷을 처리하는 패킷 처리부를 포함하는 IPv6 패킷 처리 장치.
  6. 제 5항에 있어서,
    상기 패킷 처리부가 수행하는 패킷 처리부는 패킷 필터링 또는 QoS 기능인 IPv6 패킷 처리 장치.
  7. IPv6 패킷 처리 방법에 있어서,
    전송할 IPv6 패킷을 생성하는 제 1 과정과,
    상기 IPv6 패킷의 처리를 위해 요구되는 정보를 포함하는 클래시피케이션 확장 헤더를 생성하는 제 2 과정과,
    상기 생성된 클래시피케이션 확장 헤더를 상기 IPv6 패킷의 기본 헤더의 바로 뒤에 포함시켜 전송하는 제 3 과정을 포함하는 IPv6 패킷 전송 방법.
  8. 제 7항에 있어서,
    상기 클래피시케이션 헤더는 상기 IPv6 패킷의 기본 헤더 및 확장 헤더들 뒤에 위치하는 헤더의 프로토콜 타입 및 상기 프로토콜 타입에 따른 정보를 포함하는 IPv6 패킷 전송 방법.
  9. 제 8항에 있어서, 상기 클래시피케이션 확장 헤더에 포함된 정보를 요구하는 패킷 처리는 패킷 필터링 또는 QoS(Quality of Service) 기능인 IPv6 패킷 처리 장치.
  10. IPv6 패킷 처리 방법에 있어서,
    IPv6 패킷을 수신하는 제 1 과정과,
    상기 수신한 IPv6 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷인지 판단하고, 상기 수신한 패킷이 클래시피케이션 확장 헤더를 포함하는 패킷이면 상기 클래시피케이션 확장 헤더에 포함된 정보를 검색하는 제 2 과정과,
    상기 클래시피케이션 확장 헤더로부터 검색한 정보를 사용하여 상기 수신한 패킷을 처리하는 제 3 과정을 포함하는 IPv6 패킷 처리 방법.
KR1020050009708A 2005-02-02 2005-02-02 아이피 버전 6 패킷 처리 장치 및 방법 KR100666948B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050009708A KR100666948B1 (ko) 2005-02-02 2005-02-02 아이피 버전 6 패킷 처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050009708A KR100666948B1 (ko) 2005-02-02 2005-02-02 아이피 버전 6 패킷 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20060088752A true KR20060088752A (ko) 2006-08-07
KR100666948B1 KR100666948B1 (ko) 2007-01-10

Family

ID=37177086

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050009708A KR100666948B1 (ko) 2005-02-02 2005-02-02 아이피 버전 6 패킷 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100666948B1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000201183A (ja) 1999-01-08 2000-07-18 Sony Corp デ―タ送信方法
JP2001119399A (ja) 1999-10-15 2001-04-27 Nec Commun Syst Ltd IPv6ネットワークシステム
EP1126678A1 (en) 2000-02-16 2001-08-22 Lucent Technologies Inc. Privacy for mobile terminal in telecommunications network
KR20030058400A (ko) * 2001-12-31 2003-07-07 위즈정보기술주식회사 아이피브이6 기반의 가상랜 구축을 통한 공급망 관리 방법
KR100475969B1 (ko) 2002-06-19 2005-03-17 (주) 위즈네트 IPv6 프로토콜 구현 장치와 이 장치에 사용되는 물리매체 인터페이스 유닛, IPv6 헤더 처리 유닛, 상위계층 인터페이스 유닛

Also Published As

Publication number Publication date
KR100666948B1 (ko) 2007-01-10

Similar Documents

Publication Publication Date Title
US10587492B2 (en) Method and apparatus for tracing paths in service function chains
EP3342127B1 (en) Network packet flow controller with extended session management
US7668161B2 (en) Classifying data packet protocol values
US8127349B2 (en) Point-to-multi-point/non-broadcasting multi-access VPN tunnels
US8782739B2 (en) Access list key compression
JP3717836B2 (ja) ダイナミック・ロード・バランサ
US20060136722A1 (en) Secure communication system and communication route selecting device
US20040218603A1 (en) System and apparatus for tunneling service of explicit
KR100716163B1 (ko) IPv4망과 IPv6망 간의 멀티캐스팅을 위한 터널링방법 및 장치
US20030188015A1 (en) Method for path MTU discovery on IP network and apparatus thereof
CN113132342A (zh) 方法、网络装置、隧道入口点装置及存储介质
US20120177051A1 (en) Data forwarding method, data processing method, system and relevant devices
US11695858B2 (en) Packet fragmentation control
US20150288601A1 (en) Ip data packet sending method and label switching router
US7039052B2 (en) Selective routing of multi-recipient communications
US20210258251A1 (en) Method for Multi-Segment Flow Specifications
EP3413533A1 (en) Data transmission method and server
Watteyne et al. RFC 8930: On Forwarding 6LoWPAN Fragments over a Multi-Hop IPv6 Network
EP4274123A1 (en) Packet encapsulation and de-encapsulation method and device, storage medium, and electronic device
JP4263718B2 (ja) 通信処理装置及び通信処理方法
US10397113B2 (en) Method of identifying internal destinations of network packets and an apparatus thereof
WO2003084145A1 (en) Method for changing pmtu on dynamic ip network and apparatus using the method
US20010052025A1 (en) Router setting method and router setting apparatus
KR100666948B1 (ko) 아이피 버전 6 패킷 처리 장치 및 방법
KR100849494B1 (ko) IPv6 터널링 장치 및 그 방법

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
LAPS Lapse due to unpaid annual fee