---
title: "[W7500x] Retransmission이 엉뚱한 시간에 발생하는 원인은?"
url: "https://maker.wiznet.io/forum/13380"
markdown_url: "https://maker.wiznet.io/forum/13380/md"
type: "Forum topic"
category: "MCU & Boards"
author: "leejin0"
created: "2019-07-05T09:55:46+09:00"
last_activity: "2019-07-10T03:32:24+09:00"
language: "ko"
views: 1287
replies: 5
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# [W7500x] Retransmission이 엉뚱한 시간에 발생하는 원인은?

## Question

Asked by leejin0 on 2019-07-05 in MCU & Boards.

RTR 레지스터의 설정과 다른 시간에 재전송이 발생하는데 원인은 무엇입니까?
해결 방법은 무엇입니까? 아래 내용 참조바랍니다. 작년에 게시한 문의사항입니다.

![](https://avatars.discourse-cdn.com/v4/letter/l/85e7bf/48.png) [retransmission이 너무 자주 발생합니다.](https://forum.wiznet.io/t/topic/5142) [W7500x](https://maker.wiznet.io/c/internet-mcu/w7500x/19)

> 사용중인 MCU : W7500p 사용중인 CLK : 외부 CLOCK 8MHz, PLL 48MHz / 25MHz for PHY 질문 1. RTO가 200ms가 맞습니까? 너무 빠릅니다. 질문 2. RTR이 발생하면 RTO가 자동으로 커집니까? &lt; 질문 1의 내용 > retransmission이 너무 자주 발생해서 datasheet를 참조해봤더니 RTO 기본값이 200ms라고 되어 있습니다. 그런데 아래 그림에서 보듯이 80ms 정도만에 retransmission이 발생하는군요. [\[image\]](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/6/6140ec9182e8584c4ae294997a8d683006e5e14c.png) 현재의 환경에서는 RTO를 300ms 정도로 설정하면 RTR은 발생하지 않습니다.그런데 네트워크라는 것이 매번 같지 않다보니 이게 해결책이라고는 생각되지 않는군요. &lt; 질문 2의 내용 > 보통 RTO는 최소 RTO만 지정해주고 최소 RTO를 시작으로 RTR이 발생할때마다 두 배씩 증가하고 RTR이 안 생기면 천천히 RTO를 줄이는 것이 일반적인데 W7500p는 그런 것 같아보이…

## Replies

### Reply 1 by becky, 2019-07-08

안녕하세요

해당 내용 테스트 진행한후에 다시 답변드리도록 하겠습니다.
RTR값을 한번 더 read하여 값을 확인해보시기 바랍니다.

### Reply 2 by becky, 2019-07-08

안녕하세요

먼저 저희측에서는 Retransmission Time Register로 RTR로 표기하고 있습니다.
RTO라고 표기하셨는데 혼동이 있을것 같습니다.

**질문 1. RTO가 200ms가 맞습니까? 너무 빠릅니다.**
RTR 값을 테스트하였으나 200ms 가 맞는것으로 확인되었습니다.
레지스터값을 한번 read하여 0x07d0으로 셋팅되어있는지 확인 바랍니다.

**질문 2. RTR이 발생하면 RTO가 자동으로 커집니까?**
ARP의 경우 재전송이 발생할 경우 재전송 타임은 RTR 값으로 동일하게 전송되지만,
TCP의 경우 2배씩 증가하게 되어있습니다.

아래 테스트한 이미지 첨부합니다. 첫 재전송이 200ms 후에 발생하였으며 이후 400, 800, 1600으로 증가하고 있습니다. 참고 바랍니다.

[![image](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/7/71e684bde50d4025c3c5cb0f54eb71b782323e84.png) image1436×206 8.3 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/7/71e684bde50d4025c3c5cb0f54eb71b782323e84.png)

### Reply 3 by leejin0, 2019-07-09 (in reply to reply 2)

Retransmission이 발생할 때의 RTR 레지스터의 값이 2000으로 되어 있음을 확인했습니다.

[![image](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/e/e4d127409be47c23fa195ad05856ce3228e8c2c9.png) image1409×274 32.6 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/e/e4d127409be47c23fa195ad05856ce3228e8c2c9.png)

Retransmission Time Out은 약 80ms ~ 90ms 내외로 발생하고 있습니다.

[![image](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/1d674d32cf0afe369a12b776dedef9ddf444776f.png) image1382×823 64.1 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/1d674d32cf0afe369a12b776dedef9ddf444776f.png)

192.168.22.84 는 PC이고 192.168.12.105는 W7500P입니다.

W7500P에서 Retransmission이 지속적으로 발생하고 있는 상황이며
PC에서 다른 PC와 통신할 때에는 Retransmission이 발생하지 않습니다.

### Reply 4 by leejin0, 2019-07-09

[wireshark 캡쳐 파일.zip](https://maker.wiznet.io/forum/legacyFile.asp?path=psEJ7MIPWRd62eTIHmeQcLdVAwH.zip) (252.5 KB)

첨부 1은 TCP Session을 반복해서 열고 닫으면서 데이터를 송수신 하는 경우,
첨부 3은 TCP Session을 유지한 채로 데이터만 반복적으로 송수신하는 경우입니다.

### Reply 5 by leejin0, 2019-07-10

시스템 클럭이 얼마인지에 관계 없이 RTR을 100us 해상도로 설정하도록 했다면 CPU 속도가 빠르던지 느리던지 관계 없이 100us 해상도로 동작해야 하는 것이 아닌지요?

![](https://avatars.discourse-cdn.com/v4/letter/b/e9bcb4/48.png) Bong:

> 이값이 기준으로 내부 TCP 코어로 100usec 를 알려주게 되어 있는데, 현재 20MHz(리셋값 기준)에 맞춰져서 이런 증상이 발생하는 것 같습니다. 위의 글을 보니 48Mhz 로 사용중인 것 같습니다. 따라서, 이 레지스터 값을 48MHz 에 맞추어 4800(0x12c0) 으로 조정하면 예상한 결과가 나올것으로 기대합니다.

Reference Manual에는 RTR과 TCKCNTR이 관계가 있다는 문구가 없는데 어디를 참조하면 해당 내용의 근거를 확인 할 수 있을까요?

시스템 클럭을 조정했을 때 TCKCNTR을 조정해야 하는지에 대한 이유를 기록해두지 않으면 향후 유지 보수할 때 해당 구문이 왜 필요한지 알 수 없게 되므로 코드 수정의 근거로 삼기 위함입니다.

![](https://avatars.discourse-cdn.com/v4/letter/b/e9bcb4/48.png) Bong:

> W7500P를 사용중이시면, 저희가 배포한 에러타시트도 참고하셔서 반영이 되어 있지 않다면, 코드에 반영해 주시기 바랍니다.

사용중인 부분에 대해서는 이미 적용되어 있습니다.

---

Source: https://maker.wiznet.io/forum/13380
