ATP Layer

Home What is ATP? System Arch. References Members

 

Up IBN Layer ATP Layer

 

A connection in the ATP protocol is established between two endpoints, which are identified by content ID’s. Endpoints could migrate or temporarily disappear from the network and the data segments and acknowledgments should continue to flow between them. For the sake of simplicity of presentation, we assume that all connections are simplex. Extension to the full-duplex case is straightforward.

A typical communication scenario is shown in the figure above. A source endpoint (Src), with content ID S, establishes a connection with a destination endpoint (Dst), with content ID D (Step 1). When the destination endpoint migrates to a new node (Step 2), the ATP layer on the old node spawns an agent that acts, at the ATP layer, on behalf of the destination to buffer any received data and to send acknowledgments. The ATP agents on the new and old nodes cooperate to make the migration transparent to the source endpoint. Similarly, when the source endpoint migrates (Step 3), the ATP layer on the old node spawns an agent to take care of sending any data in the buffer and to receive acknowledgments. The ATP agents on the new and old nodes cooperate to make the migration transparent to the destination endpoint. The migration step can be performed multiple times and there can be multiple agents working for the same endpoint at any time.

The ATP layer of the source endpoint, whether it is in the original node or any other agent, can take the decision to participate actively in the connection or to wait passively for the destination to pull the data. In the former case, the node publishes itself as AS while in the latter the node publishes itself as PS (where AS and PS are IDs that are derived from a content ID, S). Since the operations of the source and destination are decoupled, the default mode of the agents acting on behalf of the source is to be in the active mode, e.g. agents AS:0 and AS:4 in the figure above. Agents acting on behalf of the destination in receiving data should buffer this data until the destination appears on the new node. Therefore, these agents should be in the passive mode until the destination reappears and requests the buffered data, e.g. agent PD:8 in the figure above. A sender in the passive mode can arbitrarily choose the length of the data to be sent before waiting for another pull or the requester can determine the desired length (or its limit) in the pull message.

Each agent has a unique name composed of the original content ID plus the starting sequence number of the data it is responsible for. For example, AS:4 denotes an agent for the source endpoint in the active mode responsible for the segments starting from sequence number 4. This naming of the agents is supported by the underlying IBN where different instances (agents) of the same content S are identified by the sequence number of the starting segment the agent is responsible for. More details are in the technical report #...

 
Back to Top

 

IBN Layer ] [ ATP Layer ]

Department of Computer Science 

Last changed: February 20, 2004

Web Accessibility