---
title: "TCP loopback 테스트에서 Sn_SR의 listen 상태 유지;"
url: "https://maker.wiznet.io/forum/14147"
markdown_url: "https://maker.wiznet.io/forum/14147/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "eonjuha"
created: "2021-02-09T10:21:19+09:00"
last_activity: "2021-02-17T07:03:37+09:00"
language: "ko"
views: 908
replies: 8
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# TCP loopback 테스트에서 Sn_SR의 listen 상태 유지;

## Question

Asked by eonjuha on 2021-02-09 in Ethernet Chips.

안녕하세요, wiz550io 제품을 사용하여 TCP loopback(server)로 통신 테스트를 하려합니다.

사용한 ioLibrary 함수는 참부한 파일과 같습니다.

설 명절 잘 보내시길 바랍니다.

Application의 loopback(tcps) 테스트를 진행하려고 하는데, main함수의 while(1){} 함수에

- loopback_tcps(0,tcp_loopback_data,7); // 0번 소켓, 데이터 버퍼 배열 이름, 포트번호
  순서로 입력해 주었습니다.
  그리고 Sn_SR, IR, MR, CR, PORT을 확인하며, 소켓의 상태 및 응답을 살피고 있습니다.
  소켓의 listen 상태(Sn_SR = 0x14)에서 established로 넘어가지 않는데, loopback_tcps 함수 이외에 추가로 설정해주어야 하는 요소가 있는지 궁금합니다.

- 사용하는 프로세서 : NucleoSTM32F446RE 입니다.

[![캡처](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/1e4d6bd1a12b4e516bb21d02a549002dcedfea92.jpeg) 캡처1160×573 152 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/1e4d6bd1a12b4e516bb21d02a549002dcedfea92.jpeg)

[w5500_0209.zip](https://maker.wiznet.io/forum/legacyFile.asp?path=dTne1yPCdVMxwef5jIiwnG1F6Da.zip) (2.8 MB)

## Replies

### Reply 1 by becky, 2021-02-09

안녕하세요

TCP Server는 Listen 상태에서 TCP Client가 접속을해야 Established 상태로 바뀌는데
TCP Client에서 접속을 시도하고 있으신건가요?
시도하고있으신거라면 ip, port 등을 한번더 체크해보시기 바랍니다.

### Reply 2 by eonjuha, 2021-02-11 (in reply to reply 1)

네, pc가 client 역할을 맡았습니다.
터미널에서 wiz550io의 IP와 포트번호를 연결하여 data sending을 하는데, 돌아오는 data는 없고 Sn_SR의 변화도 달리 없습니다.ㅠ

### Reply 3 by becky, 2021-02-15

우선 Ping 테스트를 진행하여 PC와 wiz550io 간에 연결이 되어있는지 확인하시기 바랍니다.
보내주신 코드상에서 TCP Server의 port번호를 7로 설정하셨던데 PC에서 wiz550io 포트를 7로 접속하고 계신건가요?

### Reply 4 by eonjuha, 2021-02-16

답변 감사합니다.
알려주신대로 한번 더 확인해 보았습니다.

초기 설정에서 ip를 192.168.80.121 로 설정하였습니다.

ping 테스트도 해당 ip로 진행하였습니다.
ping 테스트는 정상적으로 진행됩니다.
![ping테스트](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/d/d6d9cfc5b2cf6a48af46cc94ef3f873145d82cf6.jpeg)

### Reply 5 by eonjuha, 2021-02-16

그리고 다시 포트 7번에 맞추어 TCP 연결을 하였습니다.
통신이 종료되었다는 메세지만 받았습니다.

[![연결안됨](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/16b488ad6bc74e28e1f78dddccfe89cea471172c.jpeg) 연결안됨875×721 127 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/16b488ad6bc74e28e1f78dddccfe89cea471172c.jpeg)

통신이 계속 강제 종료된다면, 설정을 잘 못하여 그런건가요?? 아니면 소스 코드 상에서 잘못 지정해주어서 그런건가요??ㅠ

확인해주셔서 감사합니다.

### Reply 6 by becky, 2021-02-16

port 번호 7이 일반적인 경우는 아닙니다.
5000 으로 변경해보시길 바랍니다.
wireshark를 설치하셔서 패킷을 확인해보시면 좋을것 같습니다.

### Reply 7 by eonjuha, 2021-02-16

감사합니다.
포트 번호를 5000으로 바꾸어 확인해보니 TCP 통신이 원활히 되는 것을 볼 수 있었습니다.

[![tcp server loopback test](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/6/60e53061ae752038b46bbf4ced2a6e674252be52.jpeg) tcp server loopback test1032×721 124 KB](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/6/60e53061ae752038b46bbf4ced2a6e674252be52.jpeg)

port 번호 7이 일반적인 경우가 아니라고 하셨는데, 포트 번호를 할당하는데도 일반적인 규칙이 있는지 궁금합니다. ![:smiley:](https://emoji.discourse-cdn.com/twitter/smiley.png?v=12)

### Reply 8 by becky, 2021-02-16

안녕하세요 아래내용 참고하시기바랍니다.

![](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/3/308f8cf1549d943b35a129893057ba843aa5b07c.png) [정보보안 스토리 – 14 Dec 18](https://itinformation.tistory.com/59)

![](https://maker.wiznet.io/forum_uploads/wiznet/original/2X/1/1ea3c75745471f58e63da842164388e50519171f.jpeg)

### [TCP, UDP 포트번호(Port Number)](https://itinformation.tistory.com/59)

프로세스가 사용할 수 있는 포트 번호는 0~65535번이다. TCP/IP 어플리케이션의 숫자는 매년 증가하기에 IANA(Internet Assigned Nuumbers Authority)에서는 포트번호 주소 공간을 신중하게 관리해야한다. 0~1023..

[ko.wikipedia.org](https://ko.wikipedia.org/wiki/TCP/UDP%EC%9D%98_%ED%8F%AC%ED%8A%B8_%EB%AA%A9%EB%A1%9D)

### [TCP/UDP의 포트 목록](https://ko.wikipedia.org/wiki/TCP/UDP%EC%9D%98_%ED%8F%AC%ED%8A%B8_%EB%AA%A9%EB%A1%9D)

로그아웃한 편집자를 위한 문서 더 알아보기 잘 알려진 포트(well-known port)는 특정한 쓰임새를 위해서 IANA에서 할당한 TCP 및 UDP 포트 번호의 일부이다. 일반적으로 포트 번호는 다음과 같이 세 가지로 나눌 수 있다. 대부분의 유닉스 계열 운영 체제의 경우, 잘 알려진 포트를 열려면 루트 권한이 있어야 한다. 이 번호는 강제적으로 지정된 것은 아니며, IANA의 권고안일 뿐이다. 가끔 각 포트 번호를 그대로 사용하지 않고 다른 용도로 사용하기도 한다. 이 경우, 트로이 목마와 같은 프로그램들이 악의적인 목적으로 포트를 변경하여 사용하는 경우도 있다.

---

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