Battlefield: 멀티플레이어 게임의 패킷 손실 및 패킷 반환 시간 검사

Battlefield: 멀티플레이어 게임의 패킷 손실 및 패킷 반환 시간 검사

나는 이것이 특이한 질문이라는 것을 알고 있지만, 여기 있는 사람들이 도움을 줄 수 있는 사람들일 가능성이 매우 높은 것 같습니다. 게임 플레이 중에 극심한 지연이 발생하는 이유를 ISP와 디버깅하려고 합니다.

질문:연결에서 병목 현상이 발생한 위치에 대한 자세한 정보를 제공하는 패킷 런타임 및 손실을 분석하는 좋은 방법은 무엇입니까? 실제로 게임을 하지 않고도 트래픽을 어느 정도 인위적으로 재현할 수 있는 쉬운 방법이 있나요?

내 상황은 다음과 같습니다.

  • 내 ISP는 주 케이블에 도달하기 전에 약 10km가 넘는 여러 액세스 지점이 있는 대규모 무선 네트워크를 통해 연결을 제공합니다. 항상 이런 식이었고 과거에는 매우 신뢰할 수 있는 것으로 입증되었습니다. ISP의 하드웨어 변경이나 기타 설정 변경으로 인해 게임 플레이 품질이 몇 달 전에 떨어졌습니다. 내 ISP는 매우 도움이 되며 문제의 원인을 찾아서 해결하려고 노력합니다.
  • 나는 일반적으로 매우 좋은 핑을 가지고 있으며 플레이할 때 게임 내 정보에는 항상 20-30ms의 좋은 핑이 표시됩니다.
  • Battlefield의 특징은 프레임 속도가 떨어지거나 연결 처리 시간이 좋지 않거나 패킷이 손실될 때 경고 기호를 표시한다는 것입니다. 반복되는 상황은 경고 기호 없이 약 10~60초 동안 재생할 수 있으며 지연이 발생하는 심각한 패킷 손실을 경험하고 BF가 모든 종류의 연결 경고를 표시한다는 것입니다. 그 후에 이 동작이 다시 나타나기 전까지 몇 초 동안 다시 플레이할 수 있습니다.

ping저는 Linux에서만 작업하고 있으며 , traceroute, nmap및 기타 네트워크 도구 에 어느 정도 익숙합니다 . 나는 BF가 사용하는 높은 포트를 알고 있고, 사용된 패킷 크기를 알아낼 수 있으며, 물론 게임 서버에서 IP를 추출할 수도 있습니다. 내 ISP가 네트워크에서 일어나는 일을 디버깅하는 동안 인위적으로 패킷 손실을 유발할 수 있도록 이 문제를 추적하기 시작하는 좋은 방법은 무엇입니까?

분석

Moonpoint에서 친절하게 제안한 대로 WireShark를 설치하고 몇 분 동안 지연되는 게임 플레이를 캡처했습니다. 첫 번째 분석에서는 게임 서버에서 들어오는 패킷에 집중했습니다. 서버에서 내 IP로 들어오는 모든 UDP 패킷을 필터링하고 해당 패킷 간의 상대적 시간을 확인하기 위해 시간을 조정했습니다. 정렬 후에는 650ms에서 1300ms 사이에 걸린 약 20개의 패킷이 있었는데, 내가 생각하기에 맵 위로 절반을 점프하는 패킷인 것 같습니다. 대부분의 다른 패킷 사이에는 게임 내에서 "Ping"으로 표시되는 약 30ms의 런타임 시간이 거의 정확합니다.

중요한 패킷을 모두 표시한 후 필터를 지우고 모든 트래픽을 조사하여 중요한 패킷 주변의 모든 패킷에 어떤 패턴이 있는지 확인할 수 있는지 확인했습니다. 제가 발견한 것은 두 가지 상황이 있다는 것입니다. 94.250.208.153은 게임 서버이고 파란색 강조 표시는 중요한 UDP 게임 패키지입니다.

첫째, 중요한 패킷보다 약 10-15개 패킷 전에 MAC 주소에서 오는 신비한 SSDP M-검색 패킷이 있습니다.

img

두 번째 상황은 중요한 패킷이 주로 Google 서버로의 TCP 재전송에 의해 선행되거나 때로는 둘러싸여 있다는 것입니다.

여기에 이미지 설명을 입력하세요

제가 취할 수 있는 추가 조치가 있나요? 신비한 SSDP 패킷을 조사하는 방법을 알려줄 수 있는 사람이 있나요?

답변1

ping과 경로 추적에 있는 기능을 결합한 MTR은 네트워크 경로에서 패킷 손실이 발생하거나 발생하는 지점을 결정하는 데 유용한 도구가 될 수도 있습니다.지터높다 ().

무료 오픈 소스를 사용할 수도 있습니다.와이어샤크문제를 해결하기 위해 패킷 분석기를 사용하지만, 그것이 제공하는 정보를 이해하려면 기본 패킷 분석기가 어떻게 작동하는지 잘 알고 있어야 합니다.인터넷 프로토콜, TCP/IP 등이 작동합니다. 온라인 사용법에 대한 강좌와 튜토리얼이 있습니다. 효과적으로 사용하는 방법을 배우는 데는 상당한 시간이 걸릴 수 있지만, Wireshark와 같은 도구를 사용하는 방법을 배우면 네트워크 연결과 관련된 모든 종류의 문제를 더 쉽게 해결할 수 있습니다.

Wireshark에 익숙하지 않다면 YouTube에서 다음을 참조하세요.초보자를 위한 WireShark 튜토리얼그리고Wireshark 101: Wireshark 방법, Haktip 115; "Wireshark 튜토리얼"이라는 용어를 검색하면 다른 많은 튜토리얼을 찾을 수 있습니다. 튜토리얼이 포함된 웹사이트는 다음과 같습니다.빠르고 더러운 Wireshark 튜토리얼,Wireshark를 사용하여 패킷을 캡처, 필터링 및 검사하는 방법, 그리고Wireshark 튜토리얼는 에서 만든 PDF 파일입니다.안젤로스 스타브로 교수조지 메이슨 대학교 컴퓨터 공학과에서. Wireshark 사용 방법에 대한 온라인 강좌도 있습니다.

Wireshark를 사용하거나tcpdump, Linux, OS X 및 Microsoft Windows에서 사용할 수 있는 명령줄 패킷 캡처 도구(윈덤프) 시스템을 사용하면 문제가 발생할 때 시스템에서 들어오고 나가는 패킷을 캡처하여 나중에 또는 실시간으로 직접 데이터를 분석할 수 있습니다. 또는 두 도구 모두 캡처한 데이터를PCAPpcap 파일은 문제를 디버깅할 때 네트워크 엔지니어 간에 네트워크 문제에 대한 데이터를 교환하는 일반적인 방법이므로 ISP의 네트워크 지원 직원이 이러한 데이터 해석에 익숙할 수 있으므로 ISP의 네트워크 지원 직원에게 데이터를 제공할 수 있습니다.

Wireshark는 네트워크 인터페이스의 모든 데이터를 캡처하지만 Battlefield 게임 서버와 관련된 네트워크 포트 번호와 IP 주소를 알고 있으므로 다음 작업을 수행할 수 있습니다.Wireshark 필터를 사용하여 포트 번호 및/또는 IP 주소를 필터링합니다..

업데이트:

그만큼16진수"SSDP M-Search 패킷"과 관련하여 본 숫자는미디어 액세스 제어(MAC)주소. MAC 주소는 50-c5-8d-26-c2-06과 유사합니다. 즉, 이더넷 및 Wi-Fi MAC 주소는 일반적으로 총 12자리의 ​​2자리 16진수 사이에 대시 또는 콜론으로 표시됩니다. 즉, 48입니다. -비트 주소. 당신이 보고 있는 것은 대신에IPv6주소 - 오늘날 인터넷에서 사용되는 인터넷 프로토콜에는 두 가지 버전이 있습니다.인터넷 프로토콜 버전 4(IPv4)최신 인터넷 프로토콜 버전 6(IPv6)도 있습니다.

SSDP는 다음을 의미합니다.단순 서비스 검색 프로토콜에 사용되는 프로토콜입니다.범용 플러그 앤 플레이(UPnP). 로컬 네트워크의 일부 시스템(IPv6 주소 fe80::50e7:d4f0:db:c4dc)이 패킷을 다음으로 보내고 있습니다.IP 멀티캐스트주소, ff02::c. IPv4의 경우 멀티캐스트 주소는 239.255.255.250인 반면 IPv6을 통한 SSDP는 X로 표시된 모든 범위 범위에 대해 주소 세트 ff0X::c를 사용합니다(본 패킷의 "X"는 "2"임).

귀하의 시스템이 왜아마존 웹 서비스(AWS)IP 주소나 Google 주소.

C:\>nslookup 52.203.205.255 8.8.8.8
Server:  google-public-dns-a.google.com
Address:  8.8.8.8

Name:    ec2-52-203-205-255.compute-1.amazonaws.com
Address:  52.203.205.255


C:\>nslookup 216.58.212.78 8.8.8.8
Server:  google-public-dns-a.google.com
Address:  8.8.8.8

Name:    lhr35s05-in-f78.1e100.net
Address:  216.58.212.78 

포트 443에 연결되어 있는 것을 확인했습니다.잘 알려진 항구HTTPS 트래픽의 경우, 하지만 제가 수행했을 때52.203.205.255 역방향 IP 조회DomainTools 사용역방향 IP 조회기능에 대해 "귀하의 조회에 대한 결과를 찾지 못했습니다."라고 보고했습니다. 종종 해당 검색 도구에 IP 주소를 입력하면 다음이 표시됩니다.FQDN(정규화된 도메인 이름)IP 주소에서 호스팅되는 웹사이트의 경우(여러 웹사이트가 동일한 IP 주소에서 호스팅될 수 있음), 이 경우에는 그렇지 않습니다.

216.58.212.78 역방향 IP 조회같은 메시지를 보냈습니다. 1e100.net이 보이면 Google 시스템입니다. Google은 이름에 '1e100'을 사용합니다. 이는 '1' 뒤에 0이 100개 있는 것을 나타내는 방식이기 때문입니다.구골.

두 패킷 모두 Battlefield 서버와의 통신과 관련이 없을 수 있습니다. 시스템에서 패킷을 보냈지만 상대방으로부터 수신 확인 패킷을 받지 못한 경우 재전송이라는 사실은 다른 사이트로의 트래픽에서도 패킷 손실이 발생했음을 나타낼 수 있습니다. 동시에 Battlefield 서버에 문제가 발생하고 있습니다. 시스템이 해당 두 IP 주소와 통신하는 이유에 관심이 있는 경우 해당 두 IP 주소를 필터링하여 다른 패킷을 보고 패킷 캡처에 나타나는 이유를 더 잘 이해할 수 있습니다.

관련 정보