전체 글94 udp 통신 지연 원격 UDP 통신 지연 문제와 무선 AP의 CPU 사용량 분석 UDP(사용자 데이터그램 프로토콜)는 실시간 애플리케이션에서 주로 사용되는 네트워크 프로토콜로, 연결 지향 방식이 아닌 비연결성 프로토콜입니다. 그만큼 빠르게 데이터를 전송할 수 있지만, 데이터 전송 보장을 하지 않기 때문에 지연이 발생할 수 있습니다. 최근 UDP 통신을 통해 데이터를 송수신하는 과정에서 무선 AP(액세스 포인트)의 CPU 사용량이 50%를 초과하면서 약 15초의 지연이 발생하는 문제를 겪었습니다. 이 문제의 원인과 해결 방안에 대해 자세히 살펴보겠습니다. 1. 문제 발생 상황 특정 네트워크 환경에서 UDP 메시지를 전송할 때, 무선 AP의 CPU 사용량이 50%를 초과하면 약 15초간 메시지가 지연되는 현상이 발생했습니다... 2024. 10. 25. ntp 설명 NTP(Network Time Protocol)의 동작 방식은 시간 동기화를 위해 클라이언트와 서버 간에 시간 정보를 주고받는 프로세스를 기반으로 합니다. 이를 목록으로 정리하면 다음과 같습니다: ### NTP 동작 방식 1. **클라이언트-서버 모델** - 클라이언트(슬레이브)는 서버(마스터)에게 현재 시간을 요청하고, 서버는 그에 대한 응답을 제공합니다. - 서버는 네트워크 상의 다른 타임 소스(예: GPS, 상위 NTP 서버)와 동기화된 정확한 시간을 유지합니다. 2. **UDP 기반 통신** - NTP는 **UDP 포트 123**을 사용하여 통신합니다. - 가벼운 패킷 전송을 위해 설계되었으며, 빠른 응답을 제공할 수 있습니다. 3. **NTP 패킷 전송** - 클라이언트는 서버로 48바이트 크기.. 2024. 9. 30. udp 시간 동기화 마스터 기기가 네트워크를 통해 자신의 시간을 슬레이브 기기들에게 전달하고, 슬레이브 기기들이 이를 통해 시간 동기화를 수행하는 알고리즘에서는 **네트워크 지연**을 고려해야 합니다. 지연 시간이 동기화 정확도에 직접적으로 영향을 미치기 때문에, 지연을 측정하고 보정하는 방법이 필요합니다. 아래는 네트워크 지연 시간을 계산하고 보정하는 방법에 대해 설명합니다. ### 1. **일방향 지연(One-way Delay) 계산의 어려움** - 네트워크 지연 시간은 **일방향 지연**(master에서 slave로 가는 전송 시간)과 **양방향 지연**(master와 slave 간의 왕복 전송 시간)을 모두 포함할 수 있습니다. - 문제는 일방향 지연을 정확히 측정하는 것이 어렵다는 것입니다. 마스터에서 슬레이브로 .. 2024. 9. 30. num to ip // 마지막 3개의 옥텟을 정수로 변환한 값을 다시 IP로 변환하는 함수 (비트 연산 없이, 최적화) function intToLast3Octets(ipInt) { const divisor = 256; // 상수로 반복되는 256 값을 저장 const octet1 = Math.floor(ipInt / (divisor * divisor)); // 첫 번째 옥텟 const remainder = ipInt % (divisor * divisor); // 남은 값을 저장해 중복 계산 방지 const octet2 = Math.floor(remainder / divisor); // 두 번째 옥텟 const octet3 = remainder % divisor; // 세 번째 옥텟 return `${octet1}.${o.. 2024. 9. 24. 이전 1 ··· 9 10 11 12 13 14 15 ··· 24 다음