---
title: "Arduino Ethernet2의 available() 문의"
url: "https://maker.wiznet.io/forum/13017"
markdown_url: "https://maker.wiznet.io/forum/13017/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "mcseop"
created: "2018-08-01T02:37:08+09:00"
last_activity: "2018-08-30T01:45:39+09:00"
language: "ko"
views: 478
replies: 1
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# Arduino Ethernet2의 available() 문의

## Question

Asked by mcseop on 2018-08-01 in Ethernet Chips.

안녕하세요. W5500을 사용하며 S/W 라이브러리는 Ethernet2를 FreeRTOS에 적당히 포팅하여 사용하고 있습니다.
그러다가 확인하고 싶은 사항이 있어 문의드립니다.
EthernetClient::available() → uint16_t W5500Class::getRXReceivedSize(SOCKET s) → readSnRX_RSR(s)과 같이 호출됩니다.

TCP통신 수신에서 available()를 확인하는데, 이 반환값이 0 이상일 경우 하나의 전체 패킷이 수신되었다고 볼 수 있는 것인지요? 아니면 available()이 >0 일 경우 일정 주기로 그 반환값이 동일한 경우가 몇번 반복되었을 경우 하나의 패킷을 모두 수신한 경우라고 판단해야하나요?

감사합니다.

## Replies

### Reply 1 by becky, 2018-08-30

안녕하세요

available()함수는 확인하셨듯이 RX메모리의 size를 확인합니다.
따라서, available()>0인경우는 packet을 recv하여 해당 packet의 size값으로 update 되었기 때문입니다.
패킷을 수신한 경우라고 판단하셔도 무방합니다.

---

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