Echo request and response 에 대하여 문의드립니다.
Echo request and response 에는 GTP-C 와 GTP-U echo 두가지가 있는데..
일반적인 상식으로는 GTP-C echo 같은 경우 GTP-C 터널을 맺기 위해 상대노드들의 유효성을
확인하기 위해 보내는걸로 알고 있습니다.
물론 평상시 트래픽이 있다면 던지지 않고 트래픽이 없을때는
던져야 하는걸로 알고 있습니다.(옵션에 따라 달라지겠지만..)
마찬가지로 GTP-U echo도 GTP-C 터널이 열린 이후 Bearer에 트래픽이 흐르는지 확인하기 위하여
보내는걸로 알고 있었는데.
TS 29.060. 7.2 Path Management에 7.2.1 부분에
A path is considered to be in use if at least one PDP context, 라는 부분이 있던데..
이게 적어도 하나의 PDP context (EPS-bearer)가 있을때 echo를 사용한다 라는건가요??
GTP-C에 해당하는건지 U 에 해당하는건지는 자세히 잘 모르겠지만, 일단은 GTP-C 또는 U을 주고 받을때
즉, 트래픽이 없을때가 아닌 오히려 있을때 Echo 메세지를 보낸다는 의미인지
정확히 어떤식으로 또는 어떻게 확인하기 위해 Echo메세지를 주고 받는지 알고 싶습니다~;;
(제가 생각했던것과는 다른 의미인듯 싶어서;;)
혹시 다른 참고할 규격서가 있다면 자세히 알려주시면 더욱 감사하겠습니다~~;;
틀리거나 수정할 사항은 다른 전문가께서 comment 해주시기 바랍니다.
■ Echo Request / Echo Response 메시지는 GTP 메시지로 GTP tunnel 상으로 전달됩니다. (GTPv1과 GTPv2 format 다릅니다. 여기서는 말씀하신 29.060(GTPv1)으로 설명합니다.)
29.060 Fig.1 GPRS 구조를 보면 동일 PLMN, UMTS 만을 대상으로 할 경우, GTP tunnel은 제어 평면에서 Gn (SGSN-GGSN)에, 사용자 평면에서 Iu-PS (RNC-SGSN)와 Gn (SGSN-GGSN, SGSN-SGSN)에 설정됩니다.
GSN(SGSN or GGSN)이 다른 GSN 또는 RNC와 GTP 터널(GTP-C, GTP-U)을 생성할 때, GSN이나 RNC는 IP 주소 및 TEID를 할당하는데, GTP 터널 별로 TEID는 다르지만 IP 주소는 같을 수도 있고 다를 수도 있습니다 (몇 개의 IP를 사용할 것임).
■ GSN 또는 RNC는 peer GSN 또는 RNC가 살아있는지 주기적으로(동적으로도 가능) Echo Request 메시지를 보내어 ping을 하게 되는데 ping은 IP 단위로 행해집니다.
말씀하신 29.060 7.2절을 보니 사용중인 path를 ping할 수 있는데, path가 사용중이란 적어도 하나의 PDP context가 있는걸 말하는군요.
■ GSN이나 RNC는 restart counter 값을 갖고 restart 하게 되면 비휘발성 메모리에 있는 restart counter 값을 하나씩 증가시킵니다.
GTP-C Echo Request 메시지를 받은 수신 GSN 또는 RNC는 restart counter 값을 넣어 Echo Response 메시지를 peer(송신 GSN 또는 RNC)에게 전송합니다. 만약 수신한 Echo Response 메시지에 있는 restart counter 값이 이전에 수신한 값보다 크면 송신 GSN 또는 RNC는 peer(수신 GSN 또는 RNC)가 restart 되어 이전 PDP context들이 지워졌음을 알고 peer와 설정되어 있는 PDP context들을 해제합니다.
GTP Tunnel은 PDP context와 1:1 이라고 보시면 되며, IP/UDP는 path에 해당한다고 보시면 됩니다. (UDP는 고정)
장비는 GTP-C든 GTP-U 든 다수의 IP 활용이 가능하며, IP 당 다수개의 GTP Tunnel을 사용할 수 있게 됩니다.
Path management는 말 그대로 Tunnel 단위가 아닌 상대 IP/UDP에 대해서 수행하는 것입니다.
GTP-C Echo와 GTP-u Echo를 통해 Path management를 하는 이유는
해당 IP/UDP path에 생성된 GTP tunnel들에 정상적으로 트래픽이 흐를 수 있는지를 확인하기 위함입니다.
만약 일정 시간 이상 응답이 없다면 interface 장애, 라우팅 장애, 상대 Node 의 장애가 발생했다고 판단하여,
자신에게 설정된 PDP Context들을 해제하는 절차를 수행합니다. (해당 IP/UDP에 한해서)
GTP의 Echo 수행 및 후속 동작 여부는 Optional 이기 때문에 장비에 따라 구현이 다를 수도 있습니다.
단, Echo Request에 대한 Response는 반드시 수행해야 합니다.