네트워크
2. application layer
YJH3968
2021. 10. 4. 23:36
728x90
HTTP
- HyperText Transfer Protocol
- HyperText : text와 text로의 link들의 집합
- HTTP의 특징
- transport layer의 프로토콜로 반드시 TCP를 사용한다.
- 상태가 없다. 즉, 서버는 클라이언트의 요청에 대한 정보를 따로 저장해두지 않는다.
- HTTP 연결
- non-persistent HTTP : 서버와 클라이언트 사이에 한 번 request와 response가 오간 뒤 TCP 연결을 끊는다.
- persistent HTTP : 서버가 클라이언트의 request에 대한 모든 hypertext를 클라이언트에 응답할 때까지 전송을 끊지 않는다. 이러한 연결 방식을 주로 사용한다.
소켓
- 애플리케이션과 네트워크 사이의 인터페이스
- 애플리케이션은 네트워크 통신을 위해 소켓에 데이터를 보내거나 받는다.
- 소켓의 종류
- TCP 소켓
- UDP 소켓
Multiplexing and Demultiplexing
- multiplexing
- 송신자 쪽에서 여러 소켓으로부터 데이터를 하나의 채널을 통해 전송하는 것
- demultiplexing
- 수신자 쪽에서 받은 segment들을 알맞는 소켓으로 보내는 것
- UDP를 사용할 경우 destination IP, destination port를 통해 어떤 소켓으로 데이터를 demultiplexing할지 결정한다. 따라서 다른 source IP, source port에서 보낸 데이터라도 같은 소켓으로 보낸다.
- TCP를 사용할 경우 source IP, source port, destination IP, destination port를 통해 어떤 (스레드의) 소켓으로 데이터를 demultiplexing할지 결정한다.
출처 : 컴퓨터네트워크 강의
728x90