네트워크

Ping과 RTT

뭉크테크 2025. 1. 9. 20:52

Ping과 RTT

  • ping 유틸리티(프로그램)는 특정 host에 대한 RTT(Round Trip Time)를 측정할 목적으로 사용된다.
  • ICMP 프로토콜을 이용한다.
  • DoS(Denial of Service) 공격용으로 악용되기도 한다.

ping이라는 말을 많이 들어봤을 것이다. 게임을 하면 게임서버에 사용자들이 함께 연결되서 사용자들이 게임을 같이 할 것이다. 문제는 여러 사람이 게임서버에 접속해 같이 게임을 하면 같은 화면을 보면서 진행이 될 것이다. 이 상황을 애기할때 동기화 이야기가 나온다. 내가 보는 화면과 상대방이 보는 화면이 같아야 한다. 만약 동기화가 깨져서 내가 보는 화면과 상대방이 보는 화면이 서로 다르다면 원활히 게임이 어려울 것이다. 이 때 재밌는 것이 나와 상대방이 게임서버 회선 연결상태를 말할 때 ping이라는 말을 쓴다. ping이라는게 별게 아니고 기본적으로 ping이라는 것은 프로그램 이름이다.

이 ping이 뭐하는거냐면 정확히는 ICMP 프로토콜을 이용해서 RTT를 측정하는 프로그램이다. 예를 들어 내가 게임서버 통신회선이 빨라서 뭔가 데이터를 보내서 그럴 회신하는데까지 20ms가 소요되고 상대방은 50ms라고 하면 게임서버는 이걸 하향평준화를 시켜 50ms에 맞추든 그보다 좀 더 빠른 쪽으로 맞추든 암튼 결국 동기화 시킬 것이다. 

결론, RTT로 네트워크 회선 속도를 결정하고 그 RTT를 측정하는 프로그램이 ping이다.

 

그래서 우리가 만약 게임을 하는데, 갑자기 Ping 튄다고 하면 이는 정확히 말하면, ping 튀는게 아니라 RTT가 뭔가 문제가 있다. 너무 길다 라고 말하는게 맞을 것이다.

 

ping같은 경우 여러가지 형태로 많이 활용되며 의사로 치면 청진기 쓰듯이 어떤 네트워크 상황을 확인하기 위한 도구인데 악용을 하면 DoS공격이 된다. 만약 철수가 CPU 점유율을 100까지 올려서 ping을 미친듯이 계속 서버에 보내면 서버는 정상적으로 작동이 안되고 다른 사용자들이 피해를 입을 것이다.

 

 

ping을 보낼 때 가장 흔한경우가 예를 들어 PC가 192.168.0.10 IP를 가지고 gateway가 192.168.0.1이라고 가정할 때 어느날 PC에 인터넷이 안되는 경우 cmd창에 ping을 쳐서 gateway에 ping을 보내는데 response가 없다면 gateway가 down되었다는 애기이다. ping을 치면 속도가 ms단위로 나오는데 이게 RTT이다.

 

ping을 보낼 때 echo request를 보낼 때, 일정 길이의 문자열을 보낸다면, 그 답변인 echo reply로 방금 보낸 똑같은 문자열이 포함되서 답변이 온다.

 

출처

https://www.inflearn.com/course/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%ED%95%B5%EC%8B%AC%EC%9D%B4%EB%A1%A0-%EA%B8%B0%EC%B4%88/dashboard

 

외워서 끝내는 네트워크 핵심이론 - 기초 강의 | 널널한 개발자 - 인프런

널널한 개발자 | TCP/IP에서 HTTP까지! 네트워크에 대한 기본 이론이 부족한 분들이 '외워서'라도 전공 이론을 이해하고자 희망하는 분들을 위해 준비한 강의입니다. 할 수 있습니다!, 네트워크, 외

www.inflearn.com

 

'네트워크' 카테고리의 다른 글

Host란 무엇인가  (0) 2025.01.09
OSI 7 Layer와 식별자  (0) 2025.01.09
ARP(Address Resolution Protocol  (0) 2025.01.09
인터넷 자동화 설정을 위한 DHCP  (0) 2025.01.09
TTL과 단편화  (0) 2025.01.09