大部分のアプリケーションは、TCP が提供する信頼性やその他のサービスを必要とします。 これらは、TCP のオーバーヘッドによる遅延やパフォーマンスの低下を許容できるアプリケーションです。

したがって、信頼性の高い転送を必要とし、ある程度の遅延を許容できるアプリケーションには、TCP が最適と言えます。 TCP は、TCP/IP プロトコル スイートの各層に固有の役割があることを示す格好の例です。 トランスポート層プロトコルである TCP は、データ ストリームのセグメント化、信頼性、フロー制御、およびセグメントの並べ直しに関連するすべてのタスクを処理するので、アプリケーションがこうしたものを管理しなくて済みます。 アプリケーションは、単にデータ ストリームをトランスポート層に送信し、TCP のサービスを使用すればよいのです。

図にも示してありますが、たとえば次のアプリケーションが TCP を使用しています。これらは、よく知られたアプリケーションです。