응용계층(세선 계층, 표현계층 포함)
- 클라이언트의 요청을 전달하기 위해 서버가 이해할 수 있는 메시지(데이터)로 변환하고 전송 계층으로 전달하는 역할
- 서비스 요청(클라이언트) -> 서비스 제공, 애플리케이션(서버)
- 서버와 통신하려면 응용 계층의 프로토콜을 사용해야 한다.
- 웹 사이트를 볼 때 HTTP, 파일을 전송할 때 FTP, 메일을 보낼 때 SMTP, 메일을 받을 때 POP3라는 프로토콜 사용
- 네트워크 장비에 붙여진 이름을 기반으로 IP 주소를 알아내는 것을 이름 해석이라고 하고 이를 위해 DNS를 사용
WWW(World Wide Web)
HTML, URL, HTTP라는 세가지 기술이 사용
HTML
- 웹 페이지에서 문장 구조나 문자를 꾸미는 테그를 사용하여 작성하는 마크업 언어
HTTP
웹 사이트를 보기위해 서버의 80번 포트를 사용하여 HTTP통신
클라이언트에서 HTTP 요청(Request)을 보내고 서버에서 HTTP응답(Response)을 반환
HTTP 요청
GET
전송할 데이터를 주소 뒤에 추가하여 전송(쿼리 스트링)
요청 정보, 파일 이름, 버전 등을 서버에 전송
캐시 가능, 브라우저 히스토리에 남음
길이 제한이 있음
- POST
전송할 데이터를 HTTP 메시지의 Body에 담아서 전송
캐시되지 않음, 브라우저 히스토리에 남지 않음
길이 제한이 없음
로그인 정보를 전송할 때 사용
- GET과 POST의 차이
사용목적
- GET은 서버의 리소스를 요청할 때(SELECT와 유사)사용
- POST는 서버의 리소스를 새로 생성하거나 업데이트할 때(CREATE와 유사) 사용
요청에 body 유무
- GET은 URL파라미터에 요청하는 데이터를 담아 보내기에 HTTP 메시지에 body가 없다.
- POST는 body에 담아 보내기에 존재
멱등성(결과가 달라지지않는 성질)
- GET은 요청하면 매번 같은 것을 보여준다.
- POST는 요청하면 달라질 수 있다.
keepalive
- HTTP/1.1 버전에서 업데이트
- 연결을 한 번 수립하면 데이터 교환을 마칠 때까지 유지하고 데이터 교환이 모두 끝내면 연결을 끊는 구조
- 서버에서 요청을 처리할 때 순서대로 처리함
- HTTP/2에서 요청을 순서대로 응답을 반환안하게 업데이트
DNS 서버
- URL을 IP 주소로 변환하는 서비스(시스템)
- www는 호스트 이름(서버 이름)
- 뒤에는 컴퓨터나 네트워크를 식별하기 위해 붙여진 이름(도메인 이름)
- DNS서버가 IP를 모를 경우 다른 DNS 서버에 질의한다.
- DNS서버는 모두 계층적으로 연결되어 있음
메일 서버
SMTP(25번 포트)
- 메일을 보내는 데 사용하는 프로토콜
- POP3(110번 포트)
- 메일을 받는데 사용하는 프로토콜
참고) 모두의 네트워크, https://brilliantdevelop.tistory.com/33
'공부 > 네트워크' 카테고리의 다른 글
9장 무선 랜 이해하기 (1) | 2023.05.18 |
---|---|
6장 전송 계층(L4) (1) | 2023.05.08 |
5장 네트워크 계층 (0) | 2023.05.01 |
4장 데이터 링크 계층 (0) | 2023.04.27 |
3장 물리 계층 데이터를 전기 신호로 변환하기 (1) | 2023.04.24 |