Transactional versus Streaming Applications

There are two fundamental types of network applications: transactional and streaming. These application types are also called interactive and batch processing application types, respectively.

Transactional applications are stop-and-go applications. They usually perform request/reply operations, often ordered. Examples of transactional applications include synchronous remote procedure call (RPC), as well as some HTTP and Domain Name System (DNS) implementations.

Streaming applications move data. To describe streaming applications with a parallel term, streaming applications adhere to a pedal-to-the-metal data transmission philosophy, usually with little concern for data ordering. Examples of streaming applications include network backup and file transfer protocol (FTP).

Once the application type is determined, its network and protocol characteristics are determined as well.

High-performance Windows Sockets Applications

Performance Dimensions