지연 시간 (delay) : 요청이 처리되는 시간, 어떤 메세지가 두 장치 사이를 왕복하는데 걸리는 시간
이런 것에 의해 영향을 받는다
packet loss : 패킷이 전체 대기열에 도착했을 때, 패킷을 저장할 공간이 없다면 라우터가 drop하게됨
병목 현상(bottleneck) : 전체 시스템의 성능이나 용량이 하나의 구성 요소로 인해 제한 받는 현상
TCP/IP 4계층 요약
Application layer
: 사용자-sw간 소통을 담당하는 계층, HTTP / SSH / DNS 프로토콜이 대표적
Transport layer
: 통신 노드간 신뢰성 있는 데이터 전송을 보장하는 계층, TCP / UDP
Internet layer
: 패킷을 최종 목적지까지 라우팅 하는 계층, IP / ARP / ICMP
Network Interface
: 물리적 MAC 주소를 이용해 알맞은 기기로 데이터를 전달하는 계층
what transport service does an app need?
Reliable data transfer : reliable한 data가 필요한 곳도 있고 아닌 곳도 존재
Timing : 타이밍이 중요한 서비스도 존재함 ex)게임
Throughput : 전송량에 엄청 예민한 서비스도 존재. 멜론과 같은 멀티미디어 서비스는 최소한의 전송량이 보장되어야 노래를 보내는거지. 한 두개 패킷 소실은 상관없지만,,
HTTP
hypertext transfer protocol
웹 서버에서 클라이언트에게 정보를 어떻게 주고받는지에 대한 것들을 정의해둔 프로토콜
특징
- 비연결성 : 실제로 요청을 주고받을 때만 연결을 유지하고, 응답을 주고 나면 TCP/IP 연결을 끊음
- 무상태성 : 서버가 클라이언트의 상태를 보존하지 않는다 (그래서 쿠키 사용함)
- TCP 사용 :
Web Caches (proxy server)
중간 개체를 둬서 오리지널 서버까지 가지않고 프록시 서버에서 정보를 가져옴
많이 쓰이는건 업데이트 해두었다가 바로바로 주는 것. 이게 만약 과거의 정보면 origin server에서 가져옴.
왜? 웹 캐시를 통해 클라이언트 요청에 대한 응답 시간을 대폭 단축 가능