가장 대표적인 네트워크 애플리케이션 : HTTP기반의 웹 브라우저
네트워크 : 운영체제 위에서 실행되는 프로세스가 다른 운영체제 위의 프로세스와 메시지를 주고 받는 것
os가 제공하는 인터페이스(socket = 네트워크 기능을 제공하는 API)를 통해 네트워크가 이루어짐
클라이언트 : 뭔가 필요할 때만 메시지 요청 → 고정된 주소일 필요 없음
서버 : 같은 장소에서 24시간 내내 돌아가는 것 → 고정된 주소를 갖는다
프로세스의 주소 = 그 프로세스가 돌아가고 있는 운영체제의 소켓 주소 = IP주소
서버의 주소는 IP주소가 고정되어 있음
포트번호는 각 프로토콜마다 정해져 있음
[정리]
네트워크 = 프로세스와 프로세스간의 통신
그 통신을 위해 주소가 있어야 함. 프로세스를 특정하기 위해
그 주소는 소켓을 통해 특정됨.
소켓은 IP주소와 포트번호의 결합으로 지칭됨.
TCP
웹 = http의 별칭
hyprered text transport protocol
하이퍼텍스트 = 텍스트 중간에 링크 있음
이러한 하이퍼텍스트를 전송하는 프로토콜
request와 response로 이루어진다
TCP 서비스를 사용함, 프로세스 사이에 TCP 연결이 있어야 함
HTTP = stateless
non persistent HTTP
persistent HTTP
stateless를 보완하기 위해 나옴 : cookie