무엇을 측정하는가
이미 오간 데이터를 셀 뿐, 무언가를 따로 가져오지 않습니다.
다운로드와 업로드 수치는 Mac이 이미 세어 둔 값에서 나옵니다. 이를 읽는 데 자체 소켓을 열지도, 서버에 접속하지도, 테스트를 돌리지도 않습니다.
macOS는 Mac의 모든 네트워크 인터페이스에 대해 누적 바이트 수를 유지합니다. Pinned는 초당 한 번 커널에 그 목록을 요청합니다, sysctl(NET_RT_IFLIST2)를 통해서. 그리고 한 번의 측정값과 다음 측정값의 차이를 보고합니다. 그 차이가 바로 속도입니다. 측정은 이것이 전부입니다.
이 카운터는 64비트. 더 손쉽게 접근할 수 있는 인터페이스는 32비트 카운터를 반환하는데, 이는 4.29GB마다 값이 넘칩니다. 빠른 연결에서는 이것이 단 몇 분 만에 일어날 수 있고, 값이 넘칠 때마다 화면에는 의미 없는 급등으로 나타났을 것입니다.
Pinned은 이를 위해 자체적으로 소켓을 열지 않습니다. 프로브도, 테스트 파일도, 상대편 서버도 없으며, 설명하려는 바로 그 트래픽에 아무것도 추가하지 않습니다.
읽어오는 인터페이스는 시스템의 기본 경로를 따르며, 매 틱마다 다시 확인됩니다. 이더넷을 뽑으면 표시는 Wi-Fi로 넘어갑니다. 휴대폰에 테더링하면 그 연결로 넘어갑니다. 따로 설정할 것은 없으며, 신뢰할 수 없는 값은 추측하지 않고 0으로 표시됩니다.
신호 경로
sysctl(NET_RT_IFLIST2), 상승된 권한 불필요기본 경로를 따름