Visual RFC.
ALL RFCs / RFC 2349
Read the RFC ↗
RFC 2349 / PROTOCOL MECHANISMS

Ask for a read size before accepting data

03

For a read request, tsize=0 asks the server for the file size in octets. The returned value lets the receiving client check its own capacity.

RFC 2349 · Transfer Size · p.3EXAMPLE
4 / 4
Ask for a read size before accepting dataSeparate insufficient-capacity client chooses permitted ERROR 3 before confirmation.Read: ask size, then choose a capacity outcomeClientServerSeparate branch from OACK; no prior ACK 01024 > local capacity 512Client chooses ERROR code 3May abort; not a mandatory capacity policyLocal capacity examples; ERROR opcode 5 / code 3, not code 8
04
Alternatively abort for insufficient capacity

Separate branch immediately after OACK, before confirmation: capacity is only 512. The client chooses the permitted ERROR code 3 abort; it has not sent the accept branch’s ACK 0.

Source for this drawing: RFC 2349 · Read RFC source: Transfer Size · p.3 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

An RRQ requests tsize with the ASCII value 0. The server returns the file size in octets in OACK.

  • An RRQ requests tsize with the ASCII value 0. The server returns the file size in octets in OACK.
  • The request value 0 means a size query; it does not assert that the remote file is empty.
  • If the file is too large for the client to handle, it may abort with ERROR code 3. This is permission, not mandatory rejection.
DETAILS

Capacity values are local fictional examples, not RFC-required storage budgets. Size information does not reserve space, authenticate a server or guarantee later transfer success. ERROR opcode 5 / code 3 is distinct from option-negotiation code 8.

Read the RFC section ↗

All chapters in RFC 2349

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗