보안 제품정보


지능형 교통 시스템을 위한 u-TSMVPN(2) u-TSMVPN의 설계와 성능분석 2014.03.10

\r\n

\r\n

국내와 국제적으로 지능형 차량 및 텔레매틱스(ITS)의 연구와 개발을 통해서 차량에 IT 기술을 통합하기 위한 노력을 가속화하고 있다. 우리나라의 경우에는 텔레매틱스(ITS) 서비스를 추진하고 있다. ITS에서의 실시간 데이터 통신은 중요한 것으로 ITS는 실시간으로 차량으로부터 데이터를 수집해, ITS 센터에서 수집된 정보를 가공해 제공한다. 이러한 통신과정에서, 효과적이고 보안적인 통신 방식을 제안하고자 한다. 특히, 연구에서 제안하고 있는 SIP기반의 MVPN은 시그널링 비용을 줄이고, 보안적인 측면에서 많은 이점이 있다. 또한, 차량간의 통신에서는 NEMO를 적용해 이동성관리를 했다. 즉, ITS에서의 차량간의 통신과 차량과 서버간의 통신을 위한 SIP기반의 모바일 VPN과 V2V NEMO에 대해서 제안한다.

\r\n


\r\n

전해남(인포섹) / 정종필 교수(성균관대학교 정보통신대학)

\r\n


\r\n


\r\n

지능형 교통 시스템을 위한 SIP 기반의 모바일 VPN과 V2V NEMO 시스템 구조

\r\n

이번 호에서는 연구에서 제안하는 SIP 기반의 MVPN을 적용한 u-TSMVPN에 대해서 설명한다. u-TSMVPN은 기존 u-TSN과 같이 유사한 통신 구조를 가진다. u-TSMVPN은 모든 교통 대상 사물을 MN(Mobile Node)으로 보고 노드들끼리 통신 프로토콜을 통해 자동으로 네트워크를 구성하면서 상호 노드 간에 상태정보와 위치정보를 주고받을 수 있는 네트워킹 기술이다.

\r\n


\r\n

u-TSMVPN 시스템은 지난 호 그림 5와 같이 차량장치(Ubiquitous Vehicle Sensor, UVS), 노변장치(Ubiquitous Infra-structure Sensor, UIS), 그리고 센터(Ubiquitous Transportation Center, UTC)로 구성된다. 또한, 차량 장치로부터의 주기적인 교통정보를 수집해야 하며, 수집된 정보는 센터로 전달돼야 한다. 그림 6은 UVS간의 통신(V2V), UVS와 UIS간의 통신(V2I), UIS간의 통신(I2I) 그리고 UIS와 UTC간의 통신(I2C)를 나타낸다.

\r\n


\r\n

먼저, 신호처리, 보안전송, 키 관리, Authentication Authorization Accounting(AAA), Application Level Gateway(ALG)에 대해서 설명한다. SIP은 응용 계층의 시그널링 프로토콜이다. 연구에서 제안하는 SIP기반의 MVPN은 모바일 사용자의 인증과 사용자 식별을 위해 사용한다. 게다가, SIP은 사용자 이동성과 터미널 이동성을 지원한다[11]. 단말기 이동성은 최초 세션에서의 것과 동일한 Call ID를 사용해 CN에게 새로운 INVITE(RE-INVITE) 명령을 보냄으로써 이뤄진다. 새로운 INVITE 명령은 MN이 새로운 위치에서 획득한 새로운 연결 주소가 포함된다. RE-INVITE 명령을 받은 후, CN는 이후의 트래픽을 MN의 신규 위치로 리다이렉트한다.

\r\n

\r\n

\r\n


\r\n

SRTP는 RTP[12]와 RTCP[12] 스트림의 메시지 암호화와 무결성을 위한 프레임워크로 정의된다. IPsec에서 ESP(Encapsulating Security Payload)는 모든 패킷에 대한 비밀성과 데이터 발신 인증을 제공할 수 있다. 반면, SRTP는 RTP 패킷의 데이터 페이로드 보호만 지원한다. 하지만 연구에서는 헤더도 보호하기 위해서 cRTP와 SRTP를 조합했다. cRTP는 모든 IP/UDP/RTP 헤더를 압축하기 위해 사용한다. 그러고 그 결과를 RTP의 확장 헤더에 포함시킨다. SRTP는 RTP의 확장 헤더가 포함된 RTP 데이터를 보호하게 된다. SRTP 패킷을 송신하게 되면, RTP 데이터를 복호화하고, cRTP데이터를 원래의 IP/UDP/RTP 헤더로 다시 압축을 해제한다. 그 후, 위·변조 체크를 위해서 송신된 IP/UDP/RTP 헤더와 압축 해제한 IP/UDP/RTP 헤더와 비교한다.

\r\n


\r\n

MIKEY는 RTP/SRTP 상에서 동작하는 멀티미디어 응용 프로그램을 위해 개발된 키 관리 프로토콜이다. 유니캐스트를 위해 주로 사용되고 있는 IKE와 비교해 보면, MIKEY는 P2P나 소규모 그룹을 위해서 설계됐다. 또한, MIKEY는 다른 환경의 요구 사항을 수용할 수 있다. 예를 들어, SDP 메시지 내에 MIKEY 메시지 내포될 수 있으며 MIKEY 메시지를 전달하기 위해 SDP에 새로운 타입 K가 정의돼 있다. MIKEY의 주요 목적은 TGK 그리고 보안 전송 프로토콜에서 사용되는 정책 및 다른 관련된 보안 매개변수를 전송하는 것이다.

\r\n


\r\n

Diameter기반의 프로토콜[13]에 기반을 둔 Diameter SIP 응용 프로그램들은 SIP 서버의 클라이언트가 Diameter 서버로부터 인증과 식별되도록 한다. 연구에서 제안된 아키텍처에서 SIP 메시지 인증이 요청되고, INVITE 요청이 성공적일 경우, SIP 서버는 TGK 전송을 위해서 AAA 서버로부터 전달받은 MIKEY initiator 메시지를 200 OK의 SDP에 추가해야 한다. SIP 프록시 서버는 ALG에 SRTP 보호를 위해서 TGK가 추가된 Data SA를 제공해야 한다.

\r\n

\r\n


\r\n

작동 절차

\r\n

그림 7은 외부 네트워크의 차량간의 통신과 차량과 인트라넷에 존재하는 u-TSMVPN Center와 통신을 보여준다. 외부네트워크에 존재하는 SIP-NVG(SIP NEMO VPN Gateway)는 다른 네트워크로 이동시 필요한 모바일 네트워크의 게이트웨이다. SIP-NVG는 SIP 표준에 따르고, 다른 서브넷으로 로밍시 끊김 없는 세션을 유지하며, 안전한 방식으로 데이터를 제공한다. 또한, SIP-NVG는 모바일 네트워크의 트래픽을 관리하는 역할을 수행한다. ALG와 SIP Proxy 1로 구성된 VPN 게이트웨이는 SIP 프록시 서버다.

\r\n


\r\n

MN이 인트라넷에 로밍되거나 인터넷 접속을 시도할 경우, SIP Proxy 1은 Diameter 서버를 통해서 들어온 SIP 메시지를 인증하고 SIP Register로 지정된 SIP Proxy 2에 라우팅 한다. 그러고 나서, ALG는 모든 데이터 트래픽을 감시한다. 세션 설정 초기화에서 MN은 인트라넷을 나가고 들어올 때 MN의 새 위치를 SIP Registrar에 등록해야 한다. 그것은 Diameter SIP Application을 기반으로 한다. MN은 처음 Registrar에 REGISTER을 보낸다. 만약 인증 시그널 메시지를 요청되면, Registrar은 Multimedia Auth Request(MAR)를 생성하고 Diameter Server에 보낸다. 그러면 Diameter Server는 인증 데이터를 포함하고 있는 MAA(Multimedia Auth Answer)을 응답한다. Registrar은 REGISTER을 식별하고, MN이 성공적으로 인증됐으면 MN에게 200 OK를 보낸다. 만약 인증이 요청되지 않으면, Unauthorized 메시지를 보낸다. 특히, REGISTER는 인트라넷의 Registrar에 메시지를 전달하기 전에 SIP Proxy 1에 의해 식별된다.

\r\n

\r\n

\r\n


\r\n

연구에서는 ITS Center가 인트라넷 안에 있다고 가정한다. MN과 ITS Center는 이미 현재 위치가 MN과 u-TSMVPN Center의 registrar인 SIP Proxy 2/Registrar에 등록 돼있다. 먼저 MN이 인트라넷에서 외부 네트워크 1에 로밍될 때를 논의한다. 새로운 네트워크에서 새로운 IP를 얻은 후에 MN은 새로운 위치를 등록해야 한다. SIP 등록 후에 MN은 활성화 세션이 존재하는지를 체크한다. 만약 존재하면, MN은 그림 8에서 보여 지는 것처럼 u-TSMVPN Center에 RE-INVITE을 해야 한다. RE-INVITE는 같은 call-ID, 초기의 INVITE 메시지 안의 포함한 것 같은 MN 연결 주소를 포함한 INVITE 메시지다.

\r\n


\r\n

MN이 SIP Proxy 1에 RE-INVITE을 보내고, SIP Proxy 2/Registrar에 메시지를 라우팅 한다. 만약 인증 시그널링 메시지를 요청하면, SIP Proxy 2/Registrar은 RE-INVITE 안의 필수적인 필드를 포함한 MAR을 Diameter Server에 보낸다. Diameter Server는 MN을 인증하고, SIP Proxy 2/Registrar에 MAA를 응답한다. 그러고 나서, SIP Proxy 2/Registrar MN에 MAA에 수신된 인증 데이터를 포함한 407 Proxy Authenticate를 응답한다. MN이 407 Proxy Authenticate를 수신한 후에, 다시 요청된 인증 데이터를 포함한 RE-INVITE를 보낸다.

\r\n


\r\n

Diameter Server는 인증 데이터를 인증하고 SIP Proxy 2/Registrar에게 MAA안의 인증 결과를 알린다. 만약 인증이 성공적이라면, MAA는 인증 결과 코드, TGK, MIKEY를 포함한다. 하지만 시그널링 메시지에 대한 인증이 허가 되지 않으면 그림 8의 MAR, MAA 과정에서 TGK, MIKEY 메시지만 요청된다. 만약 MN이 인트라넷에 접근을 시도하면, SIP Proxy 2/Registrar은 세션이 보호 될 것이라는 보증을 위한 충분한 리소스를 할당해야 한다. SIP 2/Registrar은 ALG에 내부 수신 주소와 포트를 저장하도록 한다. SIP Proxy 2/Registrar 요청은 TGK와 기존의 송신 주소와 포트를 포함하고 있다.

\r\n

\r\n

\r\n


\r\n

ALG는 저장된 내부 주소와 포트를 응답한다. SIP 2/Registrar은 RE-INVITE의 SDP안의 송신 주소와 포트를 변경한다. 그러고 나서 SIP Proxy2/Registrar은 RE-INVITE 메시지를 ITS Center에 라우팅한다. RE-INVITE의 SDP가 허가되면 ITS Center는 200 OK를 반환한다. ITS Center로부터 200OK를 받은 후에, SIP Proxy2/Registrar은 ALG에 다시 외부 수신 주소와 포트를 보존 하도록 한다. 또한, ALG는 보존된 외부 수신 주소와 포트를 응답한다.

\r\n


\r\n

만약, 모든 할당된 리소스가 준비가 되면, SIP Proxy2/ Registrar은 200 OK의 SDP안의 송신 주소와 포트를 교체한다. MIKEY initiator 메시지도 SDP에 삽입한다. 수정이 모두 완료 되면, SIP Proxy2/Registrar 은 SIP Proxy 1을 통해서 MN에 새로운 SDP 메시지에 200 OK를 전송한다. MN이 MIKEY initiator 메시지를 가진 200 OK 메시지를 수신하면, MIKEY initiator 메시지를 처리하고 공유된 TGK 추출이 필요하다.

\r\n


\r\n

그림 9는 MN이 인터넷에서 인트라넷으로 다시 돌아 올 때의 절차로 MN이 인트라넷 안에 존재 할 때는 메시지가 SIP Proxy 1을 통해서 이동할 필요가 없다. 먼저 MN은 새로운 주소를 SIP Proxy 2/Registrar에 등록하고, RE-INVITE 메시지를 보내게 된다. SIP Proxy 2/Registrar가 RE-INVITE 메시지를 수신하게 되면, SIP Proxy 2/Registrar은 사전에 모든 리소스들을 de-allocate 하게 될 것이다. 그리고 MN은 ALG를 거칠 필요 없이 그림 9에서의 ‘Transport Sessions’처럼 CN과의 직접적으로 통신이 가능하게 된다. <다음호에 계속>

\r\n


\r\n

※이번 원고는 3회에 나눠서 게재되며 참고문헌은 마지막회에 게재됩니다.

\r\n


\r\n


\r\n

[월간 시큐리티월드 통권 제206호(sw@infothe.com)]

\r\n


\r\n

<저작권자 : www.securityworldmag.co.kr) 무단전재-재배포금지>

\r\n