코드 상으론 문제가 없지만 사용자가 서비스로부터 데이터를 가져오지 못하는 상황이 발생하기도 하며, 이는 네트워크 병목 현상일 가능성이 있다. 주된 원인들은
등이 있다. 네트워크 관련 테스트와 네트워크와 무관한 테스트를 통해 네트워크로부터 발생한 문제점인 것을 확인한 후 네트워크 성능 분석을 해보아야 한다.
네트워크 상태를 확인하려는 대상 노드를 향해 일정 크기의 패킷을 전송하는 명령어이며 인터넷에서 다른 컴퓨터나 장비와 통신이 가능한지를 확인하는 데에 사용된다. ping을 통해 해당 노드의 패킷 수신 상태와 도달하기까지의 시간 등을 알 수 있으며 해당 노드까지 네트워크가 잘 연결되어 있는지 확인할 수 있다. ping은 TCP/IP 프로토콜 중 ICMP 프로토콜을 통해 동작하며, 이 때문에 ICMP 프로토콜을 지원하지 않는 기기를 대상으로는 실행할 수 없거나 네트워크 정책상 ICMP나 traceroute를 차단하는 대상의 경우 ping 테스팅은 불가능하다.
ICMP(Internet Control Message Protocol 인터넷 제어 메시지 프로토콜)는 TCP/IP 주요 프로토콜 가운데 하나이며 네트워크 컴퓨터 위에서 돌아가는 운영체제에서 네트워크 장애 진단, 라우팅 문제 해결 등에서 오류 메시지를 전송받는 데 주로 쓰인다. Ping 명령어는 IP 주소나 호스트 이름을 이용하여 목적지 장비에 ICMP 패킷을 보내고, 해당 장비가 패킷을 받았는지, 얼마나 빠르게 응답했는지를 확인하고 이를 통해 네트워크 연결 상태를 확인할 수 있다.
현재 활성화되어 있는 서비스들의 네트워크 상태를 표시하는 데 사용되며 네트워크 접속, 라우팅 테이블, 네트워크 프로토콜 등 리스트를 보여주며 주로 서비스의 포트가 열려 있는지 확인할 때 쓴다. TCP/IP 프로토콜 스택에서 현재 활성화되어 있는 연결 정보를 보여주며 이 정보에는 로컬 및 원격 주소, 연결 상태, 소켓 상태, 프로토콜, 송신 및 수신된 데이터 패킷 수 등이 포함된다. 이를 통해 네트워크 연결 문제나 과부하를 해결하는 데 유용하게 사용할 수 있다.
DNS (Domain Name System)에 질의하여 도메인 이름에 해당하는 IP 주소나 호스트 이름 등의 정보를 조회하는 유틸리티이다. DNS는 인터넷에서 도메인 이름을 IP 주소로 변환하는 시스템으로, nslookup은 이러한 DNS 시스템에 접근하여 도메인 이름에 대한 정보를 가져오는 명령어 또는 프로그램이다.
목적지 노드까지 네트워크 경로를 확인할 때 사용하는 명령어이다. 목적지 노드까지 구간들 중 어느 구간에서 응답이 느려지는지 등을 확인할 수 있다.
이외에도 ftp를 통해 대형 파일을 전송하여 테스팅하거나 tcpdump를 통해 노드로 오고 가는 패킷을 캡쳐하는 등의 명령어가 있으며 네트워크 분석 프로그램으로는 wireshark, netmon이 있다.