ICMP
ICMP : Internet Control Message Protocol
인터넷 상에서 보내고 받고 하는 수많은 control에 대한 부분을 해결해주는 protocol이다. 그래서 host나 router에서 사용된다. 주로 error reporting에 많이 사용된다. ping을 사용하여 echo (한 번 보내면 다시 오는)를 잘 갖고 오는지 확인한다.
그래서 destination network가 unreachable하거나 destination host가 unreachable하다… 등등 이런 여러 에러 메시지들 또는 ping같은 것에 의해서 사용되는 것이 ICMP이다.
ICMP 자체는 네트워크 계층의 프로토콜인데, IP 위에 올라간다. ICMP message는 type, code를 정의해놓고 8byte 정도의 message로 IP datagram에 넣는다
traceroute
출발지에서 도착지까지의 경로의 상태를 살펴보는 traceroute가 ICMP 이다. traceroute하는 과정을 살펴보자.
UDP로 보내는데, 일단 맨 처음 TTL=1로 찍어서 보낸다. TTL은 라우터 한번만 건너겠다는 뜻이다. 그러면 그 한 번에 담긴 시간과 정보들이 있다. 그리고 TTL=2로 찍어서 보낸다. 라우터를 두번 건너띄게 되고, 건너갈 때마다 각각에 대한 측정된 delay, 시간을 종합하면 전체 경로, node에 대한 정보를 수집할 수 있다. 그 때 사용하는 것이 ICMP로 하는 것이다.
그래서 ICMP message 내에 라우터의 이름이나 주소가 들어가 있다. delay도 계산 가능하다. 결국 destination host에 도착하게 되면, port unreachable message를 type3, code3으로 바꿔서 주면 source는 멈추게 된다.
[참고]
Computer Networking A Top-Down Approach 7-th Edition / Kurose, Ross / Pearson
'IT > 네트워크' 카테고리의 다른 글
[ 네트워크 ] Link Layer Services (0) | 2020.07.03 |
---|---|
[ 네트워크 ] 네트워크 관리 : Network Management (SNMP) (0) | 2020.07.03 |
[ 네트워크 ] SDN - (2) (1) | 2020.07.03 |
[ 네트워크 ] Internet inter-AS routing: BGP (1) | 2020.06.08 |
[ 네트워크 ] SDN 요약정리 (0) | 2020.06.08 |
댓글