Best effort delivery in connectionless networks
暂无分享,去创建一个
The best-effort delivery paradigm provides a powerful, general base upon which all higher level network services can be built. Rather than make guarantees about each message processed, best-effort systems make a good-faith or "best-effort" attempt at delivering messages. Messages can be lost, duplicated or reordered during transport.
The best-effort delivery paradigm defines the minimal delivery semantics needed by all higher level network services. Instead of providing extraneous functionality that only some applications need, best-effort systems furnish precisely those services needed by all applications. Consequently, best-effort systems give applications direct access to the raw performance of the underlying communication architecture.
Best-effort systems delegate the responsibility for providing special functionality, such as guaranteeing delivery of messages or preserving their relative ordering, to higher-level, end-to-end protocols. In addition, best-effort systems do not supply higher-level protocols with explicit feedback about the state of the network, pushing the responsibility for detecting and controlling network congestion to the higher-level protocols. To detect congestion, end-to-end protocols draw inferences from observed behavior. Consequently, end-to-end protocols must include mechanisms for detecting the presence of congestion that do not rely on explicit feedback from the network. In most cases, congestion detection mechanisms require special fields in message headers that must be designed into the formal protocol specification.
This dissertation investigates the best-effort delivery paradigm, focusing on the benefits and implications of its use. Part of the experimental work in the dissertation, the Cypress network, illustrates the viability of the best-effort delivery paradigm. Cypress is a wide-area network spanning the United States. In Cypress, packet switches interconnected by serial lines provide best-effort delivery service to sites connected to the network. Because it is a best-effort system, Cypress does not provide error detection or correction and does not guarantee successful delivery of all messages.