모든 네트워크 응용 프로그램은 클라이언트-서버 모델에 기초하고 있다. 이 모델에서 근본적인 연산은 트랜잭션이다.
클라이언트-서버 트랜잭션은 네 단계로 구성된다.
클라이언트-서버 트랜잭션
클라이언트와 서버는 프로세스(실행 중인 프로그램)이며 모든 서버는 호스트이지만, 모든 호스트가 서버는 아니다.
- 호스트(host)?
네트워크는 위에서 말한 클라이언트와 서버가 서로 데이터를 요청하고 응답하는 것과 같이 호스트들을 서로 연결하고 통신할 수 있는 것을 말한다. 물리적으로 네트워크는 기하학적 위치로 구성된 계층구조 시스템이다.
네트워크 계층구조의 하위수준으로는 LAN이 있고, 가장 대중적인 LAN기술은 이더넷(Ethernet, 네트워크에 연결된 각 기기들이 48bit의 고유의 MAC주소를 가지고 이 주소를 이용해 상호간에 데이터를 주고 받음)이다.
이더넷 세그먼트는 몇 개의 전선들과 허브라고 부르는 작은 상자로 구성된다. 각 전선은 동일한 최대 비트 대역폭(대개 100Mb/s거나 1Gb/s)을 가진다.