La transmission des données entre programmes nécessite l’ouverture d’un canal de communication
entre client et serveur
par lequel transitent les données (les requêtes et les réponses).
Le transport est géré
par le système d’exploitation (lorsque les données transitent au sein d’un même ordinateur)
ainsi que par des routeurs (lorsque les données transitent d’un ordinateur à l’autre sur le réseau).
Au niveau du client,
les réponses en provenance du serveur sont organisées sous la forme d’une liste,
qu’on appelle un flux de données.
La notion de flux de données signifie que les réponses sont lues dans un ordre fixe, telles qu’elles ont été écrites au niveau du serveur. On parle de lecture à accès séquentiel (par opposition à la lecture à accès aléatoire).