KR20070053345A - 라우팅 및 ip 보안프로토콜 통합 구조 - Google Patents

라우팅 및 ip 보안프로토콜 통합 구조 Download PDF

Info

Publication number
KR20070053345A
KR20070053345A KR1020077008543A KR20077008543A KR20070053345A KR 20070053345 A KR20070053345 A KR 20070053345A KR 1020077008543 A KR1020077008543 A KR 1020077008543A KR 20077008543 A KR20077008543 A KR 20077008543A KR 20070053345 A KR20070053345 A KR 20070053345A
Authority
KR
South Korea
Prior art keywords
packet
address
destination
routing
ipsec
Prior art date
Application number
KR1020077008543A
Other languages
English (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 노키아 인크
Publication of KR20070053345A publication Critical patent/KR20070053345A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/164Implementing security features at a particular protocol layer at the network layer

Abstract

본 발명은 VPN의 동적 네트워크 토폴로지들 내부에서 공통 라우팅 프로토콜들 및 IPSec 모두를 이용하여 패킷을 라우팅하도록 유도된다. OSI(Open System Interconnection) 계층 3 정보를 이용하여 IPSec 패킷들이 라우팅된다. 일 실시예에서, 보안 서브네트워크와 관련될 수 있는 계층 3 정보를 조사하기 위해 3가지 메커니즘이 사용된다. 패킷이 보안 서브네트워크와 관련되는 것으로 식별될 때, 그 패킷은 암호화되어 캡슐화되고, IP 캡슐화 보안 페이로드(ESP) 프로토콜을 이용하는 다른 패킷 내부에 원래의 목적지 및 발신지 IP 어드레스 헤더 정보를 포함하게 된다. 새로운 발신지 및 목적지 IP 어드레스들이, VPN에 대한 입구 게이트웨이 및 출구 게이트웨이와 관련되는 IP 어드레스들을 이용하여 새로운 패킷에게 제공된다. 상기 새로운 패킷은 이때 전형적인 라우팅 프로토콜들을 이용하여 VPN을 통해 라우팅될 수 있다.
VPN, 입구게이트웨이, 출구게이트웨이, IPSec, 패킷라우팅, IP어드레스

Description

라우팅 및 IP 보안프로토콜 통합 구조{ARCHITECTURE FOR ROUTING AND IPSEC INTEGRATION}
본 발명은 인터넷 프로토콜(Internet Protocol; IP) 네트워킹 및 토폴로지(topology)에 관한 것으로, 특히 가상 사설망(virtual private network; VPN)에서 동적 네트워크 토폴로지에 대한 라우팅 및 IPSec 통합(이에 한정되지 않음)에 관한 것이다.
가상 사설망(VPN)은 인터넷과 같은 외부/비인증(external/untrusted) IP 네트워크를 통해 보안 통신을 할 수 있게 한다. VPN은, 클라이언트들, 서버들 및 호스트 컴퓨터들과 같은, 서로 멀리 떨어진 내부 인증 네트워크들 상의 노드들을 접속하기 위한 비교적 안전한 방식을 제공한다. 암호화 및 다른 보안 메커니즘들은 전형적으로, 비인증 외부 네트워크를 통해 인가된 사용자들 간에 전송될 플레인 텍스트(plain text) 메시지들/패킷들을 위해 점 대 점(point to point) 보안 "터널"을 생성하도록 사용된다. 전형적으로, "플레인 텍스트" 패킷들은 암호화되어 외부 패킷(outer packet)으로 삽입된다. 이후에 내부(inner) "플레인 텍스트" 패킷은 인증되지 않은 외부 IP 네트워크를 통해 하나의 VPN 게이트웨이로부터 또 하나의 VPN 게이트웨이로 터널링(전달(forward))되어, 여기에서 상기 외부 패킷은 해독되고 상 기 내부 "플레인 텍스트" 패킷은 내부 네트워크 상에서 자신의 목적지를 향해 전달된다. 상기 외부 패킷은, 자신이 상기 외부 비인증 네트워크를 통해 하나의 노드로부터 또 하나의 노드로 터널링될 때 상기 "플레인 텍스트" 패킷을 위한 캡슐화 또는 보호 쉘(protective shell)로서 동작한다.
전형적으로, VPN에서의 게이트웨이는 또한 그들의 내부 네트워크들 상의 IP 트래픽을 위한 라우터로서 동작한다. 예를 들면, 비인증 내부 네트워크 상의 노드로부터 "플레인 텍스트" 패킷을 수신했을 때, 상기 VPN 게이트웨이는, 상기 패킷이 국부적으로(locally) 접속된 내부 네트워크의 밖에 있는 목적지로 전송되었는 지 아닌 지와 아울러 상기 패킷이 상기 목적지로 터널링되기 위해 암호화되어야 하는지 아닌 지를 확인하기 위해 선택기 리스트에서 상기 목적지를 찾아본다. 상기 패킷이 국부적으로 접속된 내부 네트워크 밖의 목적지로 전송되었고 상기 패킷이 상기 목적지로 터널링되기 위해 암호화되어야 하면, 상기 VPN 게이트웨이는 외부 비인증 네트워크를 통해 상기 목적지와 관련되는 특정 VPN 게이트웨이 피어(peer)로 상기 "플레인 텍스트" 패킷을 안전하게 터널링한다. 상기 특정 VPN 게이트웨이 피어는 이 터널링된 패킷의 목적지가 자신들의 선택기 리스트 상에 있는 지를 결정한다. 만약 그렇다면, 상기 특정 VPN 게이트웨이 피어는 상기 암호화된 패킷을 해독하여 자신과 국부적으로 접속된 내부 네트워크 상의 노드로 전달한다. 추가적으로, 상기 "플레인 텍스트" 패킷의 상기 목적지가 상기 선택기 리스트 상에 있는 것이 아니라 라우팅 테이블에서의 입구(entry)가 된다면, 상기 VPN 게이트웨이는 상기 비암호화된 플레인 텍스트를 상기 목적지로 전달했을 것이다.
점점 더 많은 게이트웨이들이 VPN에 추가됨에 따라, 메쉬 토폴로지(mesh topology)가 개발되어 모든 게이트웨이들이 VPN에 있는 모든 다른 게이트웨이를 알게 되었다. 또한, 터널들이 상기 VPN에서 각 게이트웨이 사이에 설정될 수 있다. 그러나, 각 터널이 각 게이트웨이에 유지되는 리스트에 있는 선택기와 연관될 수 있기 때문에, 관리자는 새로운 게이트웨이가 VPN에 추가되거나, 경로가 동적으로 변경될 때마다, 각 게이트웨이에 있는 이 리스트를 업데이트 해야 할 것이다. 따라서, VPN에 있는 게이트웨이들의 개수가 증가함에 따라, 각 게이트웨이 상의 선택기들의 각 리스트를 업데이트하기 위해 요구되는 노력이 부담스럽게 된다. 게다가, VPN 게이트웨이 상에서 이용되는 암호화 서비스들은 동적인 라우팅 변경을 알지 못한다.
본 발명의 실시예들이 아래의 도면들을 참조하여 설명된다. 이러한 도면들에서, 동일한 참조 번호들은 특별히 언급하지 않으면 많은 도면들에 걸쳐서 동일한 부분들을 나타낸다.
본 발명의 보다 명확한 이해를 위해서, 도면들과 관련하여 설명이 개시되는 아래의 [실시예]를 참조하기 바란다. 여기서:
도 1은 본 발명을 실시하기 위한 환경의 일 실시예를 설명하는 기능적인 블럭 다이어그램을 보여주고;
도 2는 본 발명을 구현하는 시스템에 포함될 수 있는 네트워크 디바이스의 일 실시예를 보여주고;
도 3은 상이한 네트워크 디바이스들과 관련되는 어드레스의 일 실시예와 함께 도 1의 기능적인 블럭 다이어그램을 보여주고;
도 4는 인핸스트(enhanced) 네트워크 패킷의 일 실시예를 보여주고;
도 5a는 네트워크 패킷을 송신하기 위한 프로세스의 일 실시예를 보이는 논리적인 흐름도이고;
도 5b는 네트워크 패킷을 송신하기 위한 프로세스의 또 하나의 실시예를 보이는 논리적인 흐름도이고, 그리고;
도 6은 본 발명에 따른, 네트워크 패킷을 수신하기 위한 프로세스의 또 하나의 실시예를 보여주는 논리적인 흐름도이다.
이제, 본 발명은 첨부된 도면들을 참조하여 이후에 보다 상세히 설명될 것이고, 상기 첨부된 도면들은 본 발명의 부분을 형성하며, 본 발명이 실시될 수 있는 특정 예시적인 실시예들을 도시하여 보여준다. 본 발명은, 그러나, 많은 상이한 형태로 실시될 수 있고 여기에 제시되는 실시예들로 국한되는 것으로 해석되어서는 안된다; 이러한 실시예들은 이러한 설명이 완전하게 되도록 제공되어, 이 기술 분야의 당업자에게 본 발명의 범위를 충분히 알릴 것이다. 특히, 본 발명은 방법들 또는 디바이스들로서 실시될 수 있다. 따라서, 본 발명은 완전한 하드웨어 실시예, 완전한 소프트웨어 실시예 또는 소프트웨어 및 하드웨어 양상들을 결합한 실시예의 형태를 취할 것이다. 그러므로, 아래의 상세한 설명은 국한의 의미로 생각되어서는 안된다.
간략히 말하면, 본 발명은 VPN에서 동적 네트워크 토폴로지 내부의 공통 라우팅 프로토콜들 및 IPSec(IP security protocol; IP 보안 프로토콜)을 이용하여 패킷을 라우팅하는 시스템, 방법 및 장치로 유도된다. 본 발명은 발신지(source) 및 목적지 어드레스들과 같은 개방형 시스템간 상호 접속(Open System Interconnection (OSI)) 계층 3 정보를 이용함으로써 패킷들을 안전하게 터널링하기 위한 메커니즘을 설명한다. 일 실시예에서, 3가지 메커니즘은 보호(protected) 서브네트워크와 관련될 수 있는 IP 어드레스들을 찾기 위해 사용된다. 패킷이 보호 서브네트워크와 관련되는 것으로 식별될 때, 상기 패킷은 암호화되어, IP 캡슐화 보안 페이로드(Encapsulated Security Payload(ESP)) 등과 같은 프로토콜들을 이용하는 또 하나의 패킷 내부에 캡슐화된다. 상기 패킷의 전체는 암호화 및 캡슐화되고, 원래의 목적지 및 발신지 IP 어드레스 헤더 정보를 포함한다. 새로운 발신지 및 목적지 IP 어드레스들이, IPSec 터널에 대한 입구(entry) 게이트웨이 및 출구(exit) 게이트웨이와 관련되는 IP 어드레스들을 이용하는 또 하나의 패킷에게 제공된다. 상기 새로운 패킷이 자신의 목적지에 도달하면, 그 패킷은 해독되고, 캡슐화 해지(unencapsulated)되고, 그리고 원래의 IP 어드레스 헤더 정보를 이용하여 라우팅될 수 있다.
예시적 환경
도 1은 본 발명이 구현될 수 있는 동작 환경(100)의 일 실시예를 설명하는 기능적인 블럭 다이어그램을 보여준다. 동작 환경(100)은 적합한 동작 환경의 단지 하나의 예이며 본 발명의 기능 또는 사용의 범위에 대하여 어떠한 한정을 제안하기 위해 의도된 것이 아니다. 따라서, 다른 잘 알려진 환경들 및 구성들이 본 발명의 범위 또는 사상에서 벗어나지 않고 이용될 수 있다.
도 1에 도시된 바와 같이, 동작 환경(100)은 네트워크(104)에서 터널들을 통해 서로 접속되는 게이트웨이들(102A-102E)을 포함한다. 외부 게이트웨이들(106)(108)은 다양한 게이트웨이들(102A-104A)을 통해 네트워크(104)와 통신하고 있다. 클라이언트(118A)는 외부 게이트웨이(108)와 통신하고 있고, 클라이언트(118B)는 외부 클라이언트(106)와 통신하고 있다.
일반적으로, 게이트웨이들(102A-102E) 및 외부 게이트웨이들(106,108)은, 네트워크를 통해 정보를 송신하고 수신하도록 라우터, 방화벽 등을 비롯한 다른 컴퓨팅 디바이스에 접속할 수 있는 어떤 컴퓨팅 디바이스를 실질적으로 포함할 수 있다. 따라서, 이러한 디바이스들은 게이트웨이라고 지칭되고, 그들은 실제적으로 라우터로서, 또는 유사한 네트워크 디바이스로서 구현될 수 있다. 게이트웨이들(102A-102E)의 일 실시예는 도 2를 참조하여 보다 상세히 아래에 설명된다.
클라이언트들(118A,118B)에 대한 디바이스들의 타입은 또한, 퍼스널 컴퓨터, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그래밍 가능한 가전 제품, 네트워크 PC 등과 같은 유선 또는 무선 통신 매체를 이용하여 네트워크를 통해 통신할 수 있는 컴퓨팅 디바이스를 가상으로 포함한다.
네트워크(104)는, 하나의 전자 디바이스로부터 OSI 모델 하에 계층 3 및 계층 4 통신할 수 있는 또 하나의 전자 디바이스로 정보를 전송하기 위한 컴퓨터 판 독 가능한 매체의 형태를 이용하도록 구성된다. 또한, 네트워크(104)는 근거리 통신망(local area network(LAN)), 광역 통신망(wide area network(WAN)), 범용 직렬 버스(universal serial bus(USB)) 포트를 통하는 것 같은 다이렉트 접속(direct connection), 다른 형태의 컴퓨터-판독 가능한 매체, 또는 그들의 조합 이외에 인터넷을 포함할 수 있다. 상이한 구조들 및 프로토콜들에 기초하는 것들을 비롯한 상호 접속된 LAN 세트들을 통하여, 라우터는 LAN들 사이에 링크로서 동작하여, LAN들 간에 메시지들이 송신되게 된다.
또한, LAN 내부의 통신 링크들은 전형적으로 이중 연선(twisted wire pair) 또는 동축 케이블을 포함하고, 반면 네트워크들 사이의 통신 링크들은 아날로그 전화선, T1,T2,T3 및 T4를 포함하는 전체 또는 부분 전용 디지털 회선, 종합정보통신망(Integrated Services Digital Networks(ISDN)), 디지털 가입자 회선(Digital Subscriber Line(DSL)), 위성 링크들을 포함하는 무선 링크들 또는 이 기술 분야의 당업자들에게 알려진 다른 통신 링크들을 사용할 수 있다.
추가적으로, 네트워크(104)는 통신 매체를 포함할 수 있는바, 상기 통신 매체는 전형적으로, 컴퓨터-판독 가능한 명령, 데이터 구조, 프로그램 모듈, 혹은 반송파 웨이브(carrier wave) 신호, 데이터 신호, 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호에서의 다른 데이터를 실시하고, 정보 배달 매체를 포함한다. 상기 "변조된 데이터 신호"와 "반송파-웨이브 신호" 용어들은 상기 신호에서 정보, 명령, 데이터 등을 인코딩하는 것에 관한 방식으로 설정 또는 변경된 특성들 중 하나 이상을 갖는 신호를 포함한다. 예를 통하여, 통신 매체는, 이중 연선, 동축 케 이블, 광 섬유, 도파관(wave guides) 및 다른 유선 매체(이에 한정되지 않음)와 같은 OSI 모델 하에서 계층 3 및 계층 4 통신할 수 있는 유선 매체와, 음향(acoustic), RF, 적외선(infrared) 및 다른 무선 매체(이에 한정되지 않음)와 같은 무선 매체를 포함한다.
예시적인 게이트웨이 환경
도 2는 본 발명의 일 실시예에 따른, 도 1의 게이트웨이들(102A-102E)과 같은 게이트웨이의 동작을 가능하게 하는 네트워크 디바이스의 일 실시예를 보여준다. 네트워크 디바이스(200)는 도시된 것들보다 더 많은 구성 요소들을 포함할 수 있다. 그러나, 도시된 구성 요소들은 본 발명을 실시하기 위한 예시적인 실시예를 설명하기에 충분하다.
네트워크 디바이스(200)는 처리 장치(212), 비디오 디스플레이 어댑터(214) 및 대량의 메모리(mass memory)를 포함하고, 이 모두는 버스(222)를 통해 서로 통신하고 있다. 상기 대량의 메모리는 일반적으로 RAM(216)과, ROM(232)과, 그리고 하드 디스크 드라이브(228), 테이프 드라이브, 광 드라이브 및/또는 플로피 디스크 드라이브와 같은 하나 이상의 영구 저장 디바이스들을 포함한다. 상기 대량의 메모리는 네트워크 디바이스(200)의 동작을 제어하는 운영 체계(operating system(OS)) (220)를 저장한다. 어떤 범용-목적 OS라도 사용될 수 있다. 바이오스(basic input/output system(BIOS))(218)는 또한 네트워크 디바이스(200)의 하위-레벨(low-level) 동작을 제어하기 위해 제공된다. 도 2에 도시된 바와 같이, 네트워 크 디바이스(200)는 또한 네트워크 인터페이스 유닛(210)을 통해 인터넷, 또는 어떤 다른 통신 네트워크와 통신할 수 있고, 상기 네트워크 인터페이스 유닛(210)은 RIP, OSPF, SNMP, HTTP, UDP/IP, TCP/IP 프로토콜 등(이에 한정되지 않음)을 포함하는 다양한 통신 프로토콜과 사용되도록 구성된다. 예를 들면, 일 실시예에서, 네트워크 인터페이스 유닛(210)은 TCP 및 IP 멀티캐스트 모두를 이용하는 하이브리드 통신 기법을 채택할 수 있다. 네트워크 인터페이스 유닛(210)은 종종 송수신기(transceiver), 네트워크 인터페이스 카드(NIC)로서 알려져 있다.
네트워크 디바이스(200)는 또한 전자메일을 송수신하기 위한 SMTP 핸들러 애플리케이션과, HTTP 요청을 수신하고 핸들링하기 위한 HTTP 핸들러 애플리케이션 그리고 보안 접속들을 핸들링하기 위한 HTTPS 핸들러 애플리케이션을 포함한다. 상기 HTTPS 핸들러 애플리케이션은 안전하게 외부 애플리케이션과의 통신을 초기화한다. 게다가, 네트워크 디바이스(200)는 TLS, TTLS, EAP, SSL, IPSec 등(이에 한정되지 않음)을 포함하는 어떤 보안 접속들 실질적으로 지원하는 애플리케이션들을 더 포함할 수 있다.
네트워크 디바이스(200)는 또한, 도 2에는 도시되어 있지 않은 마우스, 키보드, 스캐너 또는 다른 입력 디바이스들과 같은 외부 디바이스들과 통신하기 위한 입/출력 인터페이스(224)를 포함한다. 마찬가지로, 네트워크 디바이스(200)는 CD-롬/DVD-롬 드라이브(226)와 하드 디스크 드라이브(228)와 같은 추가적인 대량 저장 장치들을 더 포함할 수 있다. 하드디스크 드라이브(228)는, 다른 것들 사이에, 애플리케이션 프로그램들, 데이터베이스들, 클라이언트 디바이스 정보, 정 책(policy), 그리고 인증서, 암호, 패스워드 등(이에 한정되지 않음)을 포함하는 보안 정보를 저장하기 위해 사용될 수 있다.
하나 이상의 애플리케이션들(250)은 대량의 메모리로 로딩되어 OS(220)를 통하여 실행될 수 있다. 애플리케이션 프로그램들의 예들은 트랜스코더, 스케쥴러, 그래픽 프로그램, 데이터베이스 프로그램, 워드 프로세싱 프로그램, HTTP 프로그램, 사용자 인터페이스 프로그램, 다양한 보안 프로그램 등을 포함할 수 있다. 대량 메모리는 라우팅 애플리케이션(260), 선택기 스토어(262), IPSec 애플리케이션(264) 및 IPSec 룩업 스토어(266)와 같은 애플리케이션들을 더 포함할 수 있다. 이러한 애플리케이션들은 또한 네트워크 디바이스, 다른 네트워크 디바이스, 게이트웨이 등을 포함하는 다른 구성요소들과 상호 연동할 수 있다.
별개의 구성요소들로서 도 2에 도시되었더라도, 라우팅 애플리케이션(260), 선택기 스토어(262), IPSec 애플리케이션(264) 및 IPSec 룩업 스토어(266)는 본 발명의 범위를 벗어나지 않는 다양한 방식들 중 어떠한 방식으로든, 배열될 수 있고 조합될 수 있다. 예를 들면, IPSec 애플리케이션(264) 및 IPSec 룩업 스토어(266) 구성요소들은 단일의 애플리케이션으로서 통합될 수 있고 혹은 몇 개의 애플리케이션들로서 통합될 수도 있다. 게다가, IPSec 애플리케이션(264), IPSec 룩업 스토어(266) 등과 같은 구성요소들은 네트워크 디바이스(200)와 유사한 하나 이상의 컴퓨팅 디바이스들에 상주할 수 있다.
도 3은 상이한 네트워크 디바이스들과 관련되는 어드레스들의 일 실시예와 함께 도 1의 기능적인 블럭 다이어그램을 보여준다. 도 3의 시스템(300)은 도 1의 시스템(100)와 실질적으로 유사하다. 따라서, 동일하게 참조번호가 붙여진 구성요소들은 실질적으로 동일하게 동작한다. 그러나, 도 3은 다양한 구성요소들과 관련되는 IP 어드레스들을 보여준다. 예를 들면, 도 3에서 보여지는 바와 같이, 192.6.5.10의 IP 어드레스는 클라이언트(118B)와 관련된다. IP 어드레스 10.2.3.4는 클라이언트(118A)와 관련된다. 유사하게, IP 어드레스 20.3.5.10는 게이트웨이(102D)와 관련되고, 반면 IP 어드레스 6.4.5.10은 게이트웨이(102A)와 관련된다. 명확하게, 이러한 IP 어드레스들은 단지 예시로서 의도되며, 그러므로, 실질적으로 어떤 IP 어드레스라도 상기 구성요소들과 관련될 수 있다.
도 4는 본 발명에 따른 인핸스트(enhanced) 네트워크 패킷의 일 실시예를 보여준다. 인핸스트 네트워크 패킷(400)은 도시된 것들보다 더 많은 구성요소들을 포함할 수 있다. 그러나, 도 4에 도시된 구성요소들은 본 발명을 실시하기 위한 예시적인 실시예를 설명하기에 충분하다.
도 4에 도시된 바와 같이, 인핸스트 네트워크 패킷(400)은 발신지 어드레스 헤더(402), 목적지 어드레스 헤더(404), 캡슐화 보안 페이로드(ESP) 헤더(406) 그리고 데이터 필드(408)를 포함한다. 데이터 필드(408)는 네트워크 패킷(410)을 포함하고, 이 네트워크 패킷(410)은, 도시되지 않은 다른 것들 사이에, 원래의 IP 발신지 헤더(412), 원래의 IP 목적지 헤더(414), 그리고 원래의 데이터(416)를 포함한다.
인핸스트 네트워크 패킷(400)은 인터넷 RFC(Request for Comments)(RFC 2406)에 설명되어 있는 IP ESP 프로토콜을 이용하여 구현될 수 있고, 이 인터넷 RFC(RFC 2406)는 레퍼런스로서 여기서 통합된다. 예를 들면, 도시된 실시예에서, RFC 2406에 설명되어 있는 전송-모드 프로토콜은 단지 데이터 필드(408)의 내용이 암호화 및 캡슐화되도록 이용될 수 있다. 그러나, 본 발명은 이러한 것으로 국한되지 않는다. 예를 들면, 인핸스트 네트워크 패킷(400)은 RFC 2406 등과 같은 터널링-모드 프로토콜 메커니즘을 이용하여 구현될 수 있다.
도면에서, 단지 예시의 목적으로, 네트워크 패킷(410)에 대한 원래의 IP 발신지 어드레스는 IP 어드레스 192.6.5.10이고 반면 네트워크 패킷(410)의 원래의 IP 목적지 어드레스는 IP 어드레스 10.2.3.4라고 가정한다. 따라서, 도 3를 참조하면, 상기 원래의 네트워크 패킷(410)은 클라이언트(118B)로부터 송신되었고 클라이언트(118A)로 향한다.
더 설명하면, 네트워크 패킷(410)은 암호화되어 인핸스트 네트워크 패킷(400) 내부로 캡슐화된다. 인핸스트 네트워크 패킷(400)은 20.3.5.10의 발신지 IP 어드레스가 할당되었고, 이 20.3.5.10의 발신지 IP 어드레스는 도 3의 게이트웨이(102D)와 관련된다. 인핸스트 네트워크 패킷(400)은 또한 목적지 IP 어드레스 6.4.5.10이 할당되었고, 이 목적지 IP 어드레스 6.4.5.10은 도 3의 게이트웨이(102A)와 관련된다.
예시적 순서도
본 발명의 어떤 양상들의 동작이 이제 도 5A, 도 5B, 및 도 6과 관련하여 설명된다. 도 5A는 잠재적으로 동적 네트워크 토폴로지를 갖는 VPN 내의 IPSec을 사 용하여 네트위크 패킷을 보내기 위한 프로세스의 일 실시예를 일반적으로 보여주는 논리적 순서도를 나타낸다. 도 5A의 프로세스(500)는 도 1의 게이트웨이들(102A-102E) 중 적어도 하나의 게이트웨이 내에서 구현될 수 있다. 일반적으로 네트워크 패킷이 VPN의 경계에서 게이트웨이에 의해 수신되는 경우, 프로세스(500)로 진입한다.
프로세스(500)는 시작 블록 이후, 결정 블록(502)에서 시작하고, 이 결정 블록(502)에서 수신된 네트워크 패킷 내의 IP 어드레스들이 선택기 리스트 내에 포함되는지 여부에 대한 결정이 이루어진다. 만약 IP 어드레스들이 리스트 내에 있지 않다면, 프로세스(500)는 결정 블록(504)으로 진행한다. 그러나, 만약 IP 어드레스들에 대해 선택기 리스트 내에서 일치(match)가 발견된다면, 프로세스는 블록(508)으로 진행하고, 이 블록(508)에서 네트워크 패킷은 다양한 암호화 알고리즘들 중 어떤 것을 사용하여 암호화된다.
결정 블록(504)에서, IP 어드레스들, 발신지 및 목적지가 도 2의 IPSec 룩업 스토어(266)와 같은 IPSec 동적 라우팅 룩업 스토어 내에서 발견되는지 여부가 결정된다. 일 실시예에서, IPSec 룩업 스토어는 패트리카 트리 메커니즘(Patricia tree mechanism)을 사용하고, 또 다른 실시예에서는 다른 타입의 트리 또는 데이터 구조가 사용될 수 있다. 그러나, 본 발명은 이러한 것에 한정되지 않고, 실질적으로 어떠한 검색 및 저장 메커니즘이 사용될 수 있다. 어떤 경우에 있어서, 만약 IPSec 동적 라우팅 룩업 스토어 내에서 일치가 식별되지 않는다면, 프로세싱은 블록(508)으로 분기한다. 만약 그렇지 않다면, 프로세싱은 블록(506)으로 계속되며, 블록(506)에서 패킷의 일반적인 네트워크 프로토콜 라우팅이 수행된다. 블록(506)이 종료되면, 프로세스(500)는 다른 동작을 수행하기 위해 호출 프로세스(calling process)로 리턴한다.
그러나, 만약 프로세싱이 결정 블록(504) 또는 결정 블록(502)으로부터 블록(508)으로 분기한다면, 수신된 데이터 패킷은 다양한 암호화 알고리즘들 중 어떤 것을 사용하여 암호화된다. 다음으로 프로세싱은 블록(510)으로 이동하고, 이 블록(510)에서 암호화된 패킷은 ESP 프로토콜 등을 사용하여 구성되는 또 다른 (인핸스트(enhanced)) 네트워크 패킷 내에서 캡슐화된다. 추가적으로, 인핸스트 네트워크 패킷은 발신지 IP 어드레스로서 수신 게이트웨이와 관련된 IP 어드레스를 사용한다. 이 인핸스트 네트워크 패킷은 또한 목적지 IP 어드레스로서 VPN 상에서 출구 게이트와 관련된 IP 어드레스를 사용한다. 그 다음으로 프로세싱은 블록(506)으로 진행하고, 블록(506)에서 인핸스트 네트워크 패킷은 다양한 일반적인 패킷 라우팅 프로토콜들 중 어떤 것을 사용하여 라우팅 된다. 블록(506)이 종료되면, 프로세스(500)는 다른 동작을 수행하기 위해 호출 프로세스로 리턴한다.
도 5B는 잠재적으로 동적 네트워크 토폴로지를 갖는 VPN 내에서 라우트를 업데이트하는 프로세스의 일 실시예를 일반적으로 보여주는 논리적 순서도를 나타낸다. 도 5B의 프로세스(520)는 도 1의 게이트웨이들(102A-102E) 중 적어도 하나의 게이트웨이 내에서 구현될 수 있다. 네트워크 패킷이 VPN의 경계에서 게이트웨이에 의해 수신되는 경우 일반적으로 프로세스(520)로 진입한다.
프로세스(520)는, 시작 블록 이후, 블록(522)에서 시작하고, 블록(522)에서 입구 게이트웨이에서의 라우팅 데몬은 피어로부터 라우트 업데이트를 수신한다. 이 피어는 OSPF 피어, 메타홉 피어, 또는 VPN에 의해 보호되는 어떤 다른 타입의 피어를 포함할 수 있다. 다음으로, 프로세스는 결정 블록(524)으로 진행하고, 이 결정 블록(524)에서 라우팅 데몬은 선택적으로 라우트 업데이트를 룰 리스트(rule list)에 비교한다. 만약 긍정적(affirmative) 비교가 존재한다면, 프로세스는 블록(526)으로 진행하고, 이 블록(526)에서 IPSec 룩업 스토어는 입구 게이트웨이에서 라우팅 데몬에 의해 업데이트 된다. 다음으로 프로세스는 다른 동작을 수행하기 위해 호출 프로세스로 리턴한다.
그러나, 만약 결정 블록(524)에서의 결정이 부정적이라면(라우트 업데이트에 대해 어떠한 긍정적 룰 비교가 없다면), 프로세스는 블록(528)으로 진행하고, 이 블록(528)에서 라우팅 업데이트는 라우팅 데몬에 의해 라우팅 테이블 내에 포함된다. 이러한 경우에, 라우팅 업데이트는 IPSec 룩업 스토어 내에 포함되지 않는다. 다음으로, 프로세스는 다른 동작을 수행하기 위해 호출 프로세스로 리턴한다.
도 6은 잠재적인 동적 네트워크 토폴로지를 갖는 VPN에서 IPSec을 사용하여 네트워크 패킷을 수신하는 과정의 일 실시예를 전반적으로 도시하는 논리 흐름도이다. 도 6의 프로세스(600)는 도 1의 게이트웨이들(102A 내지 102E) 중 적어도 하나의 내부에서 수행될 수 있다. 프로세스(600)는 전형적으로, VPN 내의 또 하나의 게이트웨이가 도 5의 프로세스(500)로부터 개선된 네트워크 패킷을 수신하는 때에 시작된다.
프로세스(600)는 시작 블록 이후에, 블록(602)에서 시작되는데, 여기서, 수 신된 네트워크 패킷은 해독될 수 있다. 이후에, 프로세싱은 결정 블록(604)으로 진행하는데, 여기서, 선택기 리스트가 수신된 네트워크 패킷이 중간 네트워크 홉을 포함하는지에 관해 표시하는지에 대한 결정이 이루어진다. 만일 그러한 경우에, 프로세싱은 블록(612)으로 진행하며, 그렇지 않은 경우에, 프로세싱은 결정 블록(606)으로 진행한다.
결정 블록(606)에서, 네트워크 패킷 내의 IP 어드레스들이 (도 2의 IPSec 룩업 스토어(266)와 같은) IPSec 룩업 스토어 내의 IP 어드레스들과 매칭하는지에 대한 결정이 이루어진다. 일 실시예에서, IPSec 룩업 스토어는 퍼트리샤 트리 메커니즘(Patricia tree mechanism)을 이용한다. 그러나, 본 발명은 이에 국한되지 않으며, 실제적으로 모든 검색 및 저장 메커니즘이 이용될 수 있다. 임의의 이벤트에서, 만일 매칭이 발견되는 경우에, 프로세싱은 결정 블록(608)으로 진행하며, 그렇지 않은 경우에, 프로세싱은 블록(610)으로 분기한다.
결정 블록(608)에서, 네트워크 패킷의 라우팅이 중간 홉을 포함하는지에 대한 결정이 이루어진다. 만일 그러한 경우에, 프로세싱은 블록(612)으로 진행하며, 그렇지 않은 경우에, 프로세싱은 블록(610)으로 진행한다.
블록(612)에서, 수신된 네트워크 패킷은 재암호화된다. 이후에, 프로세싱은 블록(614)으로 진행하며, 여기서, 재암호화된 패킷이 재캡슐화된다. 이 재캡슐화된 (개선된) 네트워크 패킷은 IP 발신지 어드레스로서 VPN의 입구 게이트웨이의 IP 어드레스와, 그리고 IP 목적지 어드레스로서 VPN의 출구 게이트웨이의 IP 어드레스를 사용하여 생성된다. 이후에, 프로세싱은 블록(610)으로 진행한다.
블록(610)에서, 수신된 네트워크 패킷은 임의의 공통 패킷 라우팅 프로토콜들을 이용하여 라우팅된다. 네트워크 패킷이 해독된 경우에서, 원래 캡슐화된 데이터 패킷이 라우팅에 이용가능하도록 함으로써, 원래의 IP 목적지 어드레스는 네트워크 패킷을 그 목적지에 라우팅하는데 이용된다. 블록(610)을 완료하자마자, 기타 동작들을 수행하기 위해, 프로세싱은 호출 과정으로 복귀한다.
전술한 흐름도들에서의 각 블록, 및 이러한 흐름도들의 블록들의 조합들은 컴퓨터 프로그램 명령들에 의해 구현될 수 있다. 이러한 프로그램 명령들은 머신을 생성하도록 프로세서에 제공될 수 있으며, 따라서, 프로세서상에서 실행되는 명령들은, 흐름도 블록 또는 블록들에서 특정된 동작들을 수행하기 위한 수단을 생성하게 된다. 컴퓨터 프로그램 명령들은 일련의 동작 단계들이 프로세서에 의해 수행되도록, 컴퓨터-기반 프로세스를 생성하기 위해 프로세서에 의해 실행될 수 있으며, 따라서, 프로세서상에서 실행되는 명령들은, 흐름도 블록 또는 블록들에서 특정된 동작들을 수행하기 위한 단계들을 제공한다.
따라서, 흐름도의 블록들은 특정 동작들을 수행하는 수단의 조합들, 특정 동작들을 수행하는 단계의 조합들, 및 특정 동작들을 수행하는 프로그램 명령 수단을 지원한다. 또한, 흐름도의 각 블록, 및 흐름도의 블록들의 조합들은 특수 목적 하드웨어-기반 시스템들에 의해 구현될 수 있으며, 여기서, 특수 목적 하드웨어-기반 시스템들은 특정 동작들 또는 단계들, 또는 특수 목적 하드웨어의 조합들 및 컴퓨터 명령들을 수행한다.
상기 명세서, 예들, 및 데이터는 본 발명 구성의 제조 및 사용에 대한 완전 한 설명을 제공한다. 본 발명의 사상과 범주 내에서, 본 발명의 많은 실시예들이 가능할 수 있기 때문에, 본 발명은 하기에 첨부된 청구범위 내에 들게 된다.

Claims (22)

  1. 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법으로서,
    캡슐화된 패킷에 포함되어 있는 암호화된 패킷을 해독하는 단계- 여기서, 상기 캡슐화된 패킷은 네트워크를 통해 수신되며 -와;
    만일 선택자 리스트가 상기 해독된 패킷에 대한 중간 홉(hop)을 표시하는 경우에, 상기 해독된 패킷은 재암호화되어, 또 하나의 캡슐화된 패킷에 포함되는 단계- 여기서, 상기 또 하나의 캡슐화된 패킷은 출구 게이트웨이로 라우팅되며 -와; 그리고
    만일 상기 해독된 패킷이 중간 홉과 관련되지 않는 경우에, 상기 해독된 패킷을 그 목적지로 라우팅하는 단계를 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  2. 제 1항에 있어서,
    상기 해독된 패킷의 목적지 어드레스가 IPSec 룩업 스토어에 포함되는지를 결정하는 단계와;
    중간 홉이, IPSec 룩업 스토어에 포함되는 상기 목적지 어드레스에 대한 것으로 표시되는지를 결정하는 단계와;
    상기 중간 홉에 대한 것으로 표시되는 상기 목적지 어드레스를 포함하는 상기 해독된 패킷을 재암호화하는 단계와; 그리고
    또 하나의 캡슐화된 패킷으로, 상기 재암호화된 패킷을 재캡슐화하는 단계- 여기서, Z상기 또 하나의 캡슐화된 패킷은 상기 출구 게이트웨이로 전송되며 -를 더 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  3. 제 1항에 있어서, 상기 또 하나의 캡슐화된 패킷은 출구 게이트웨이의 목적지 IP 어드레스와 입구 게이트웨이의 발신지 IP 어드레스를 이용하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  4. 제 1항에 있어서,
    패킷을 수신하는 단계- 여기서, 상기 패킷은 암호화되어 있지 않으며 -와;
    상기 수신 패킷의 목적지 어드레스와 발신지 어드레스가 상기 선택자 리스트에 포함되어 있는 경우에, 상기 목적지 어드레스와 상기 발신지 어드레스가 IPSec 룩업 스토어에 포함되는 것으로 결정하는 단계와;
    상기 선택자 리스트와 상기 IPSec 룩업 스토어 모두에 포함되어 있는 상기 발신지 어드레스와 상기 목적지 어드레스를 포함하는 상기 패킷을 암호화하는 단계와;
    상기 캡슐화된 패킷으로 상기 암호화된 패킷을 캡슐화하는 단계와; 그리고
    상기 캡슐화된 패킷을 그 목적지로 전송하는 단계를 더 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  5. 제 4항에 있어서, 상기 캡슐화된 패킷은, 출구 게이트웨이의 목적지 IP 어드레스와 입구 게이트웨이의 발신지 IP 어드레스를 이용하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  6. 제 1항에 있어서, 상기 캡슐화된 패킷에 포함되는 상기 암호화된 패킷은, 상기 캡슐화된 패킷에 포함되어 있는 또 하나의 목적지 어드레스와 또 하나의 발신지 어드레스와 별개인 목적지 어드레스와 발신지 어드레스를 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  7. 제 1항에 있어서, 상기 또 하나의 목적지 어드레스는 출구 게이트웨이와 관련되며, 그리고 상기 또 하나의 발신지 어드레스는 입구 게이트웨이와 관련되는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅을 통합하는 방법.
  8. 제 1항에 있어서,
    만일 수신된 라우팅 업데이트(routing update)가 적어도 하나의 룰과 관련되는 경우에, 상기 라우팅 업데이트로 IPSec 룩업 스토어를 업데이트하는 단계와; 그리고
    만일 상기 수신된 라우팅 업데이트가 적어도 하나의 룰과 관련되지 않는 경우에, 라우팅 테이블을 업데이트하는 단계를 더 포함하는 것을 특징으로 하는 암호 화 및 캡슐화와 패킷 라우팅을 통합하는 방법.
  9. 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치로서,
    명령들을 저장하기 위한 메모리와; 그리고
    상기 명령들의 적어도 일부에 기반하여, 하기의 동작들을 인에이블(enable)하는 프로세서를 포함하여 구성되며,
    여기서, 상기 프로세서는:
    캡슐화된 패킷에 포함되어 있는 암호화된 패킷을 해독하는 동작- 여기서, 상기 캡슐화된 패킷은 네트워크를 통해 수신되며 -과,
    만일 선택자 리스트가 상기 해독된 패킷에 대한 중간 홉을 표시하는 경우에, 상기 해독된 패킷은 재암호화되어, 또 하나의 캡슐화된 패킷에 포함되는 동작- 여기서, 상기 또 하나의 캡슐화된 패킷은 출구 게이트웨이로 라우팅되며 -과, 그리고
    만일 상기 해독된 패킷이 중간 홉과 관련되지 않는 경우에, 상기 해독된 패킷을 그 목적지로 라우팅하는 동작을 수행하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  10. 제 9항에 있어서, 상기 동작들은:
    상기 해독된 패킷의 목적지 어드레스가 IPSec 룩업 스토어에 포함되는지를 결정하는 동작과;
    중간 홉이, IPSec 룩업 스토어에 포함되는 상기 목적지 어드레스에 대한 것 으로 표시되는지를 결정하는 동작과;
    상기 중간 홉에 대해 표시되는 상기 목적지 어드레스를 포함하는 상기 해독된 패킷을 재암호화하는 동작과; 그리고
    또 하나의 캡슐화된 패킷으로, 상기 재암호화된 패킷을 재캡슐화하는 동작- 여기서, 상기 또 하나의 캡슐화된 패킷은 상기 출구 게이트웨이로 전송되며 -을 더 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  11. 제 9항에 있어서, 상기 또 하나의 캡슐화된 패킷은, 출구 게이트웨이의 목적지 IP 어드레스와 입구 게이트웨이의 발신지 IP 어드레스를 이용하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  12. 제 9항에 있어서, 상기 동작들은:
    패킷을 수신하는 동작- 여기서, 상기 패킷은 암호화되어 있지 않으며 -와;
    상기 수신 패킷의 목적지 어드레스와 발신지 어드레스가 상기 선택자 리스트에 포함되어 있는 경우에, 상기 목적지 어드레스와 상기 발신지 어드레스가 IPSec 룩업 스토어에 포함되는 것으로 결정하는 동작과;
    상기 선택자 리스트와 상기 IPSec 룩업 스토어 모두에 포함되어 있는 상기 발신지 어드레스와 상기 목적지 어드레스를 포함하는 상기 패킷을 암호화하는 동작과;
    상기 캡슐화된 패킷으로 상기 암호화된 패킷을 캡슐화하는 동작과; 그리고
    상기 캡슐화된 패킷을 그 목적지로 전송하는 동작을 더 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  13. 제 12항에 있어서, 상기 캡슐화된 패킷은 출구 게이트웨이의 목적지 IP 어드레스와 입구 게이트웨이의 발신지 IP 어드레스를 이용하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  14. 제 9항에 있어서, 상기 캡슐화된 패킷에 포함되는 상기 암호화된 패킷은, 상기 캡슐화된 패킷에 포함되어 있는 또 하나의 목적지 어드레스 및 또 하나의 발신지 어드레스와 별개인 목적지 어드레스와 발신지 어드레스를 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  15. 제 9항에 있어서, 상기 또 하나의 목적지 어드레스는 출구 게이트웨이와 관련되며, 그리고 상기 또 하나의 발신지 어드레스는 입구 게이트웨이와 관련되는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  16. 제 9항에 있어서, 상기 장치는 라우터, 방화벽, 서버, 그리고 네트워크 디바이스 중 적어도 하나를 포함하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  17. 제 9항에 있어서,
    상기 장치는 라우팅 데몬(routing daemon)을 더 포함하여 구성되며,
    여기서, 상기 라우팅 데몬은:
    만일 수신된 라우팅 업데이트가 적어도 하나의 룰과 관련되는 경우에, 상기 라우팅 업데이트로 IPSec 룩업 스토어를 업데이트하는 동작과; 그리고
    만일 상기 수신된 라우팅 업데이트가 적어도 하나의 룰과 관련되지 않는 경우에, 라우팅 테이블을 업데이트하는 동작을 수행하는 것을 특징으로 하는 캡슐화 및 암호화와 패킷 라우팅의 통합을 제공하는 장치.
  18. 복수의 실행가능 명령들을 포함하는 컴퓨터 판독가능 매체로서,
    여기서, 상기 복수의 명령들은:
    캡슐화된 패킷에 포함되는 암호화된 패킷을 해독하는 동작- 여기서, 상기 캡슐화된 패킷은 네트워크를 통해 수신되며 -과;
    만일 선택자 리스트가 상기 해독된 패킷에 대한 중간 홉을 표시하는 경우에, 상기 해독된 패킷은 재암호화되어, 또 하나의 캡슐화된 패킷에 포함되는 동작- 여기서, 상기 또 하나의 캡슐화된 패킷은 출구 게이트웨이로 라우팅되며 -과; 그리고
    만일 상기 해독된 패킷이 중간 홉과 관련되지 않는 경우에, 상기 해독된 패킷을 그 목적지로 라우팅하는 동작이 수행될 수 있게 하는 것을 특징으로 하는 컴퓨터 판독가능 매체.
  19. 제 18항에 있어서, 상기 동작들은:
    상기 해독된 패킷의 목적지 어드레스가 IPSec 룩업 스토어에 포함되는지를 결정하는 동작과;
    중간 홉이, IPSec 룩업 스토어에 포함되는 상기 목적지 어드레스에 대한 것으로 표시되는지를 결정하는 동작과;
    상기 중간 홉에 대한 것으로 표시되는 상기 목적지 어드레스를 포함하는 상기 해독된 패킷을 재암호화하는 동작과; 그리고
    또 하나의 캡슐화된 패킷으로 상기 재암호화된 패킷을 재캡슐화하는 동작- 상기 또 하나의 캡슐화된 패킷은 상기 출구 게이트웨이로 전송되며 -을 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체.
  20. 제 18항에 있어서, 상기 또 하나의 캡슐화된 패킷은, 출구 게이트웨이의 목적지 IP 어드레스와 입구 게이트웨이의 발신지 IP 어드레스를 이용하는 것을 특징으로 하는 컴퓨터 판독가능 매체.
  21. 제 18항에 있어서, 상기 동작들은:
    패킷을 수신하는 동작- 여기서, 상기 패킷은 암호화되어 있지 않으며 -과;
    만일 상기 수신 패킷의 목적지 어드레스와 발신지 어드레스가 상기 선택자 리스트에 포함되는 경우에, 상기 목적지 어드레스와 상기 발신지 어드레스가 IPSec 룩업 스토어에 포함되는 것으로 결정하는 동작과;
    상기 선택자 리스트와 상기 IPSec 룩업 스토어 모두에 포함되어 있는 상기 발신지 어드레스와 상기 목적지 어드레스를 포함하는 상기 패킷을 암호화하는 동작과;
    상기 캡슐화된 패킷으로 상기 암호화된 패킷을 캡슐화하는 동작과; 그리고
    상기 캡슐화된 패킷을 그 목적지로 전송하는 동작을 더 포함하는 것을 특징으로 하는 컴퓨터 판독가능 매체.
  22. IPSec과 패킷 라우팅 동작들을 통합하는 장치로서,
    복수의 명령들을 저장하기 위한 메모리와; 그리고
    상기 복수의 명령들을 이용하는 프로세서를 포함하여 구성되며,
    여기서, 상기 복수의 명령들은:
    수신 패킷이 암호화된 패킷을 캡슐화하고 있는지를 결정하는 동작과, 그리고. 만일 그러한 경우에,
    상기 캡슐화된 패킷에 포함되어 있는 상기 암호화된 패킷을 해독하는 동작과.
    만일 중간 홉이 상기 해독된 패킷과 관련되는 경우에, 또 하나의 캡슐화된 패킷으로 상기 해독된 패킷을 재암호화하는 동작- 여기서, 상기 또 하나의 캡슐화된 패킷은 출구 게이트웨이로 라우팅되며 -과, 그리고
    만일 상기 해독된 패킷이 중간 홉과 관련되지 않은 경우에, 상기 해독된 패킷을 그 목적지로 라우팅하는 동작을 수행할 수 있게 하는 것을 특징으로 하는 IPSec과 패킷 라우팅 동작들을 통합하는 장치.
KR1020077008543A 2004-09-15 2005-09-01 라우팅 및 ip 보안프로토콜 통합 구조 KR20070053345A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/941,772 2004-09-15
US10/941,772 US7647492B2 (en) 2004-09-15 2004-09-15 Architecture for routing and IPSec integration

Publications (1)

Publication Number Publication Date
KR20070053345A true KR20070053345A (ko) 2007-05-23

Family

ID=36035475

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077008543A KR20070053345A (ko) 2004-09-15 2005-09-01 라우팅 및 ip 보안프로토콜 통합 구조

Country Status (6)

Country Link
US (1) US7647492B2 (ko)
EP (1) EP1794937A1 (ko)
KR (1) KR20070053345A (ko)
CN (1) CN101048978A (ko)
TW (1) TWI312626B (ko)
WO (1) WO2006030266A1 (ko)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7978716B2 (en) 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
US8739274B2 (en) * 2004-06-30 2014-05-27 Citrix Systems, Inc. Method and device for performing integrated caching in a data communication network
US7757074B2 (en) 2004-06-30 2010-07-13 Citrix Application Networking, Llc System and method for establishing a virtual private network
US8495305B2 (en) 2004-06-30 2013-07-23 Citrix Systems, Inc. Method and device for performing caching of dynamically generated objects in a data communication network
AU2005266945A1 (en) 2004-07-23 2006-02-02 Citrix Systems, Inc. A method and systems for securing remote access to private networks
US8046830B2 (en) 2004-07-23 2011-10-25 Citrix Systems, Inc. Systems and methods for network disruption shielding techniques
US7636841B2 (en) 2004-07-26 2009-12-22 Intercall, Inc. Systems and methods for secure data exchange in a distributed collaborative application
JP4407452B2 (ja) * 2004-09-29 2010-02-03 株式会社日立製作所 サーバ、vpnクライアント、vpnシステム、及びソフトウェア
US8706877B2 (en) 2004-12-30 2014-04-22 Citrix Systems, Inc. Systems and methods for providing client-side dynamic redirection to bypass an intermediary
US8549149B2 (en) * 2004-12-30 2013-10-01 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP multiplexing
US20060253605A1 (en) * 2004-12-30 2006-11-09 Prabakar Sundarrajan Systems and methods for providing integrated client-side acceleration techniques to access remote applications
US8700695B2 (en) 2004-12-30 2014-04-15 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP pooling
US7810089B2 (en) * 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
EP1842354B1 (en) 2005-01-24 2014-11-05 Citrix Systems, Inc. Systems and methods for performing caching of dynamically generated objects in a network
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
CN100414929C (zh) * 2005-03-15 2008-08-27 华为技术有限公司 一种移动互联网协议网络中的报文传送方法
EP1708426A1 (en) * 2005-04-01 2006-10-04 BRITISH TELECOMMUNICATIONS public limited company Resource reservation in network routing
US8189481B2 (en) * 2005-04-08 2012-05-29 Avaya, Inc QoS-based routing for CE-based VPN
MX2007014616A (es) 2005-05-20 2009-08-12 Methylgene Inc Inhibidores de señalizacion del receptor del factor a de crecimiento endotelial vascular y del receptor del factor de crecimiento de hepatocitos.
US7894369B2 (en) * 2005-08-19 2011-02-22 Opnet Technologies, Inc. Network physical connection inference for IP tunnels
US8165038B2 (en) * 2005-08-19 2012-04-24 Opnet Technologies, Inc. Network physical connection inference for IP tunnels
US8301839B2 (en) 2005-12-30 2012-10-30 Citrix Systems, Inc. System and method for performing granular invalidation of cached dynamically generated objects in a data communication network
US7921184B2 (en) 2005-12-30 2011-04-05 Citrix Systems, Inc. System and method for performing flash crowd caching of dynamically generated objects in a data communication network
US8375421B1 (en) * 2006-03-02 2013-02-12 F5 Networks, Inc. Enabling a virtual meeting room through a firewall on a network
WO2008064719A1 (en) * 2006-11-30 2008-06-05 Telefonaktiebolaget Lm Ericsson (Publ) Packet handling in a mobile ip architecture
US8701010B2 (en) 2007-03-12 2014-04-15 Citrix Systems, Inc. Systems and methods of using the refresh button to determine freshness policy
US7720936B2 (en) * 2007-03-12 2010-05-18 Citrix Systems, Inc. Systems and methods of freshening and prefreshening a DNS cache
US7783757B2 (en) * 2007-03-12 2010-08-24 Citrix Systems, Inc. Systems and methods of revalidating cached objects in parallel with request for object
US7809818B2 (en) * 2007-03-12 2010-10-05 Citrix Systems, Inc. Systems and method of using HTTP head command for prefetching
US8074028B2 (en) 2007-03-12 2011-12-06 Citrix Systems, Inc. Systems and methods of providing a multi-tier cache
US7584294B2 (en) * 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
US8504775B2 (en) 2007-03-12 2013-08-06 Citrix Systems, Inc Systems and methods of prefreshening cached objects based on user's current web page
US8037126B2 (en) * 2007-03-12 2011-10-11 Citrix Systems, Inc. Systems and methods of dynamically checking freshness of cached objects based on link status
US8103783B2 (en) 2007-03-12 2012-01-24 Citrix Systems, Inc. Systems and methods of providing security and reliability to proxy caches
US8752131B2 (en) * 2008-04-30 2014-06-10 Fujitsu Limited Facilitating protection of a maintenance entity group
US8504716B2 (en) * 2008-10-08 2013-08-06 Citrix Systems, Inc Systems and methods for allocating bandwidth by an intermediary for flow control
EP2449742A1 (en) * 2009-07-01 2012-05-09 Solar Turbines Incorporated Method for connecting a first computer network to at least a second extended computer network
US9021251B2 (en) * 2009-11-02 2015-04-28 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for providing a virtual private gateway between user devices and various networks
KR101585936B1 (ko) * 2011-11-22 2016-01-18 한국전자통신연구원 가상 사설 망 관리 시스템 및 그 방법
US9417922B2 (en) 2012-12-03 2016-08-16 Cutting Edge Consulting Associates, Inc. Systems and methods for protecting an identity in network communications
US9124652B1 (en) * 2013-03-15 2015-09-01 Google Inc. Per service egress link selection
CN104283701A (zh) * 2013-07-03 2015-01-14 中兴通讯股份有限公司 配置信息的下发方法、系统及装置
US9148408B1 (en) 2014-10-06 2015-09-29 Cryptzone North America, Inc. Systems and methods for protecting network devices
US9906497B2 (en) * 2014-10-06 2018-02-27 Cryptzone North America, Inc. Multi-tunneling virtual network adapter
CN111988214B (zh) * 2014-11-06 2022-04-15 柏思科技有限公司 用于在vpn网关处建立vpn连接的方法和系统
US9866519B2 (en) 2015-10-16 2018-01-09 Cryptzone North America, Inc. Name resolving in segmented networks
US10412048B2 (en) 2016-02-08 2019-09-10 Cryptzone North America, Inc. Protecting network devices by a firewall
US10516650B2 (en) * 2017-09-13 2019-12-24 Netabstraction, Inc. Dynamic, user-configurable virtual private network

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5416842A (en) * 1994-06-10 1995-05-16 Sun Microsystems, Inc. Method and apparatus for key-management scheme for use with internet protocols at site firewalls
JPH10178421A (ja) * 1996-10-18 1998-06-30 Toshiba Corp パケット処理装置、移動計算機装置、パケット転送方法及びパケット処理方法
US6101543A (en) * 1996-10-25 2000-08-08 Digital Equipment Corporation Pseudo network adapter for frame capture, encapsulation and encryption
US6226748B1 (en) * 1997-06-12 2001-05-01 Vpnet Technologies, Inc. Architecture for virtual private networks
JP2000295274A (ja) * 1999-04-05 2000-10-20 Nec Corp パケット交換装置
WO2001082097A1 (en) 2000-04-27 2001-11-01 Fortress Technologies, Inc. A method and apparatus for integrating tunneling protocols with standard routing protocols
US20020007453A1 (en) 2000-05-23 2002-01-17 Nemovicher C. Kerry Secured electronic mail system and method
US7995603B2 (en) * 2001-05-22 2011-08-09 Nds Limited Secure digital content delivery system and method over a broadcast network
US7042842B2 (en) * 2001-06-13 2006-05-09 Computer Network Technology Corporation Fiber channel switch
US20030172264A1 (en) 2002-01-28 2003-09-11 Hughes Electronics Method and system for providing security in performance enhanced network
US7624431B2 (en) * 2003-12-04 2009-11-24 Cisco Technology, Inc. 802.1X authentication technique for shared media

Also Published As

Publication number Publication date
WO2006030266A1 (en) 2006-03-23
TWI312626B (en) 2009-07-21
CN101048978A (zh) 2007-10-03
US7647492B2 (en) 2010-01-12
US20060059370A1 (en) 2006-03-16
EP1794937A1 (en) 2007-06-13
TW200625875A (en) 2006-07-16

Similar Documents

Publication Publication Date Title
US7647492B2 (en) Architecture for routing and IPSec integration
US11283772B2 (en) Method and system for sending a message through a secure connection
KR100758733B1 (ko) 계승된 보안 속성을 이용하여 보안 네트워크를 통하여프록시 요구를 관리하기 위한 시스템 및 방법
US9647988B2 (en) Policy-based configuration of internet protocol security for a virtual private network
US7373660B1 (en) Methods and apparatus to distribute policy information
US20070276958A1 (en) System, method and program for encryption during routing
US20120303949A1 (en) Packet transmission method, apparatus, and network system
US20090199290A1 (en) Virtual private network system and method
US20050021949A1 (en) Encryption apparatus, encryption method, and encryption system
JP2005277498A (ja) 通信システム
CA2680599A1 (en) A method and system for automatically configuring an ipsec-based virtual private network
Cisco Policy Management
Cisco Policy Management
JP6075871B2 (ja) ネットワークシステム、通信制御方法、通信制御装置及び通信制御プログラム
US20130133063A1 (en) Tunneling-based method of bypassing internet access denial
Napier SECURING VIRTUAL PRIVATE NETWORKS

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application