Amanda Protocol

From wiki.zmanda.com
Revision as of 19:28, 31 July 2010 by Dustin (talk | contribs) (half-done)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

When communicating over a Security API connection, the initiator makes requests of the target using the packet-based Amanda Protocol. This protocol grew out of the UDP days, so it includes lots of timeouts and retransmissions which are essentially superfluous in modern installations of Amanda.

Packet Types

There are five types of packet:

Packet Types
Symbol Code Description
P_REQ 0 Request
P_REP 1 Reply
P_PREP 2 Partial Reply
P_ACK 3 Acknowledge
P_NACK 4 Negative Acknowledge

Packet Encoding

Packets are encoded as a single-byte type identifier, followed by a NUL-terminated string representing the body of the packet.

Protocol Definition

The initiator begins by sending a REQ packet, which has the following format (optionally prefixed with authentication information):

SERVICE servicename\n
OPTIONS options\n
service-specific information

The OPTIONS line generally describes the features supported by the initiator, the authentication mechanism in use, and so on.