TCP/IP
4. Application
3. Transport
2. Internet
1. Network Interface
Application Layer
- 사용자에게 체감할 수 있는 서비스 제공
- transport 이하의 계층을 제외한 모든 영역이 해당
종류
프로토콜 | 동작 방식 |
HTTP | 웹 페이지 데이터 |
POP, SMTP, IMAP | 메일 송수신 & 보관 |
SMB, AFP | LAN 안에서 파일 공유 |
FTP | 서버를 통해 파일 송수신 |
SSH, Telnet | 원격에서 서버 제어 |
프로토콜 | 동작 방식 |
DNS | 도메인과 IP 주소 정보를 서로 변환할 때 사용 |
DHCP | LAN 내의 컴퓨터에게 IP 주소 할당할 때 사용 |
SSL/TLS | 통신 데이터를 암호화하여 주요 정보를 주고 받을 때 사용 |
NTP | 네트워크에 연결된 장비들의 시스템 시간을 동기화할 때 사용 |
LDAP | 네트워크에 연결된 자원의 통합관리에 필요한 디렉터리 서비스 제공할 때 사용 |
HyperText Transfer Protocol (HTTP)
- 웹 브라우저가 웹 서버로 웹 페이지를 요청하면 웹 서버가 해당 페이지의 내용을 HTML 형식으로 응답
- HTTP Message: 요청 (request), 응답 (reponse)
- stateless (무상태 프로토콜): 정보를 주고 받은 후 통신을 끊음
1. HTTP 요청과 URL
- 요청을 보낼 때, URL (Uniform Resource Locator) 문자열 사용
ex) http://www.sample.co.kr/sample/index.html
- [요청 정보 행 / 헤더]가 포함되는데 GET 요청인 경우 별도의 요청 내용인 메시지 바디가 없음
2. HTTP 응답과 상태 코드
- 응답에는 첫 번째 행에 요청에 대한 응답 상태를 시하기 위한 상태 코드가 포함 ex) 200, 404
- [응답 정보 행 / 헤더 / 메시지 바디]
3. GET / POST 방식
- HTML 요청을 보낼 때 GET 방식과 POST 방식의 두 종류를 많이 사용
- GET: 입력 폼의 내용이 요청 행에 포함 -> 결과 웹 페이지의 URL의 '?' 문자 뒤에 입력 폼의 내용이 붙음
- POST: 입력 폼의 내용이 메시지 바디에 포함 -> 정보를 저장하거나 변경할 때 사용 (상대적으로 많은 데이터 전송 가능)
- POST 방식도 전송한 메시지를 해석하면 내용이 노출되어 보안상 안전하지 않음
4. Asynchronous JavaScript and XML (AJAX)
- HTTP 메시지로 통신하지만 서버에 요청을 보내는 주체가 브라우저가 아닌 자바스크립트임
- 자바스크립트가 웹 페이지의 특정 부분에만 응답받은 내용이 갱신되도록 처리함
Cookie
- HTTP는 stateless이기 때문에 여러 건의 요청 처리를 동일한 사용자 접속 세션 (session)을 유지할 수 있도록 쿠키를 사용
- 웹 브라우저는 응답받은 메시지에 'Set-Cookie:' 문자열을 확인하고 있으면 로컬 디스크에 cookie 형태로 저장
- 보안을 위해 동일한 사용자인지 확인하기 위한 session ID 등의 식별 정보만 클라이언트에 쿠키로 저장하도록 제한
Simple Mail Transfer Protocol (SMTP) & Post Office Protocol (POP)
- 발신자는 SMTP를 사용하여 메일 서버로 메일을 보내고 수신자는 POP를 사용해서 메일 서버로부터 자신의 메일을 받아옴
1. SMTP의 동작 방식
- Stateful 프로토콜이기 때문에 전송 종료 명령이 보내져야 통신이 종료됨
- 메일 서버 간에도 SMTP가 사용됨
- SMTP Auth: 사용자 인증 기능이 추가된 확장 프로토콜
2. POP의 동작 방식
- POP 프로토콜을 사용해 수신자의 메일 서버에 저장된 메일을 확인하거나 삭제함
3. IMAP
- IMAP 프로토콜은 클라이언트 PC가 메일을 수신하더라도 메일 서버에서 수신한 메일을 지우지 않고 보관함
File Transfer Protocol (FTP)
- 파일 전송 프로토콜로 LAN과는 달리 주로 인터넷에 연결된 서버에 파일을 전송할 때 사용
- 파일을 주고 받기 위한 data connection, 명령어를 보내기 위한 control connection의 2가지 접속 형태 사용
-> 접속 형태가 분리되어 전송 중에도 명령을 줄 수 있어서 전송 중인 파일 중단 가능
'MLOps > Network' 카테고리의 다른 글
Network Interface Layer (TCP/IP) (0) | 2022.01.07 |
---|---|
Internet Layer (TCP/IP) (0) | 2022.01.06 |
Transport Layer (TCP/IP) (0) | 2022.01.06 |
컴퓨터 네트워크 (0) | 2022.01.04 |