ASAP, Aggregate Server Access Protocol |
Description | Glossary | RFCs | Publications | Obsolete RFCs |
Protocol suite: | TCP/IP. |
Protocol type: | Application layer protocol. |
Multicast addresses: | 224.0.1.185 (IPv4).
FF0X:0:0:0:0:0:0:133 (IPv6). |
SCTP payload: | 11. |
Ports: | 3863 (SCTP, TCP, UDP).
3864 (SCTP, TCP, UDP) over TLS. |
MIME subtype: | |
SNMP MIBs: | |
Working groups: | rserpool, Reliable Server Pooling. |
Links: | IANA: RSerPool parameters. |
Aggregate Server Access Protocol, in conjunction with the Endpoint Handlespace Redundancy Protocol, provides a high-availability data transfer mechanism over IP networks. ASAP uses a handle-based addressing model that isolates a logical communication endpoint from its IP address(es), thus effectively eliminating the binding between the communication endpoint and its physical IP address(es), which normally constitutes a single point of failure.
In addition, ASAP defines each logical communication destination as a pool, providing full transparent support for server pooling and load sharing. It also allows dynamic system scalability. Members of a server pool can be added or removed at any time without interrupting the service.
ASAP is designed to take full advantage of the network level redundancy provided by the Stream Transmission Control Protocol. Each transport protocol, other than SCTP, MUST have an accompanying transport mapping document.
The high-availability server pooling is gained by combining two protocols, namely ASAP and ENRP, in which ASAP provides the user interface for Pool Handle to address translation, load sharing management, and fault management, while ENRP defines the high-availability Pool Handle translation service.
ASAP messages passed between Pool Elements (PEs) and ENRP servers MUST use SCTP as the transport protocol.
MAC header | IP | IPv6 header | SCTP | TCP | UDP header | ASAP header | Data ::: |
ASAP header:
00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Type | Flags | Length | |||||||||||||||||||||||||||||
Data ::: |
Type.
8 bits.
Message type.
Type | Description | References |
---|---|---|
0 | reserved. | RFC 5352 |
1 | ASAP_REGISTRATION. | RFC 5352 |
2 | ASAP_DEREGISTRATION. | RFC 5352 |
3 | ASAP_REGISTRATION_RESPONSE. | RFC 5352 |
4 | ASAP_DEREGISTRATION_RESPONSE. | RFC 5352 |
5 | ASAP_HANDLE_RESOLUTION. | RFC 5352 |
6 | ASAP_HANDLE_RESOLUTION_RESPONSE. | RFC 5352 |
7 | ASAP_ENDPOINT_KEEP_ALIVE. | RFC 5352 |
8 | ASAP_ENDPOINT_KEEP_ALIVE_ACK. | RFC 5352 |
9 | ASAP_ENDPOINT_UNREACHABLE. | RFC 5352 |
10 | ASAP_SERVER_ANNOUNCE. | RFC 5352 |
11 | ASAP_COOKIE. | RFC 5352 |
12 | ASAP_COOKIE_ECHO. | RFC 5352 |
13 | ASAP_BUSINESS_CARD. | RFC 5352 |
14 | ASAP_ERROR. | RFC 5352 |
15 - 255 | reserved. | RFC 5352 |
Flags.
8 bits.
Message specific flag bits.
Length.
16 bits, unsigned.
Size of the ASAP header and data in bytes.
Data. Variable length.
ASAP User.
A PE or PU that uses ASAP.
Business Card.
When presented by an ASAP User, it specifies the pool the sender belongs to and provides a list of alternate PEs in case of failovers.
ENRP Client Channel.
The communication channel through which an ASAP User sends all namespace service requests.
The client channel is usually defined by the transport address of the
Home ENRP server and a well-known port number.
The channel MAY make use of multicast or a named list of ENRP servers.
Handlespace.
A cohesive structure of Pool Handles and relations that may be queried by an internal or external agent.
Home ENRP Server.
The ENRP server to which a PE or PU currently sends all namespace service requests.
A PE must only have one Home ENRP server at any given time, and both
the PE and its Home ENRP server MUST know and keep track of this relationship.
A PU should select one of the available ENRP servers as its Home ENRP server, but
the collective ENRP servers may change this by the sending of an ASAP_ENDPOINT_KEEP_ALIVE message.
Operational Scope.
The part of the network visible to pool users by a specific instance of the reliable server pooling protocols.
Pool.
A collection of servers providing the same application functionality.
Pool Element.
A server entity having registered to a pool.
Pool Handle.
A logical pointer to a pool.
Each server pool is identified in the operational scope of the system by a unique Pool Handle.
Pool Element Handle.
A logical pointer to a particular Pool Element in a pool, consisting of the Pool Handle and a destination transport address of the Pool Element.
Pool User.
A server pool user.
Transport Address.
A transport address is traditionally defined by Network Layer address, Transport Layer protocol and Transport Layer port number.
In the case of SCTP running over
IP, a transport address is defined by the combination of an IP address and an SCTP port number (where SCTP is the Transport protocol).
RFCs:
[RFC 5351] An Overview of Reliable Server Pooling Protocols.
[RFC 5352] Aggregate Server Access Protocol (ASAP).
[RFC 5354] Aggregate Server Access Protocol (ASAP) and Endpoint Handlespace Redundancy Protocol (ENRP) Parameters.
[RFC 5355] Threats Introduced by Reliable Server Pooling (RSerPool) and Requirements for Security in Response to Threats.
Description | Glossary | RFCs | Publications | Obsolete RFCs |