응용 계층 서비스
- 네트워크를 사용하는 응용 프로그램
관련 프로토콜
HTTP (Hypertext Transfer Protocol) : 서버와 클라이언트 사이에서 웹문서를 전송하기 위한 규정
FTP (File Transfer Protocol) : 파일 전송을 위한 규정
SMTP (Simple Mail Transfer Protocl) : 이메일 전송을 위한 규정
- 웹과 HTTP
- 클라이언트는 사이트를 접속할 때 사이트를 구성하는 웹 문서에 해당하는 파일을 요청함
- HTTP 프로토콜이 사용됨
- 전송시간 : TCP 연결 + 파일 전송 = 2*RTT(Round Trip Time) + File 전송시간
- 쿠키
- 쿠키는 어떤 사이트를 방문한 상태
- 서버는 사용자 A가 당사 사이트를 방문하였을 때 A에 대한 특정 id(A) 쿠키를 서버의 데이터베이스에 저장
- 클라이언트는 웹 브라우저에서 쿠키 설정을 동의하였을 때 id(A)에 대한 쿠키 파일을 로컬 저장소에 저장
- 같은 클라이언트가 추후 요청시 서버의 데이터베이스를 접근하여 id(A)에 대한 쿠키에 해당하는 서비스 제공
- 프록시 서버 (웹 캐싱)
- 프록시 서버는 메인 서버와 클라이언트 사이의 중간 역할
- 캐시 기능이 있어서 로컬 클라이언트에게 요청에 대한 빠른 응답이 가능
- 메인 서버를 보호하기 위한 보안 이유
- 이메일
- 메일 송신자와 수신자의 상황
- 두 메일 서비스 이용자는 서로 다른 사이트 (메일 서버)를 가짐, 예) naver.com -> gmail.com
- 송신자 --(SMTP)--> 송신자의 메일 서버 --(SMTP)--> 수신자의 메일서버 --(POP3, IMAP, HTTP)--> 수신자
- 송신자의 메일 서버는 메시지를 확인하여 수신자 (목적지) 메일 서버를 확인하여 전송해줌
- SMTP는 메일 전송관련 프로토콜
- 메일 내용을 담당하는 프로토콜은 POP3, IMAP, HTTP가 있음
POP3 | IMAP | HTTP |
데이터 로드시 서버에 있던 메세지 삭제 다운로드 후 연결 해제 |
서버에 메세지를 보관할 수 있음 유저가 메세지를 정리 및 보관 가능 다운로드 후에도 연결을 유지함 |
웹 기반 이메일 |
클라이언트와 서버
- 서버
- 항상 켜져있어야 서비스가 가능함
- 고정된 IP 주소
- 데이터 센터, 웹 서버, 메일 서버 등등
- 클라이언트
- 동적 IP 주소 할당 (DHCP)
- 간헐적 접속
- 서비스 요청 requeset (->서버)과 응답 respond (<-서버) 과정으로 통신이 이루어짐
- 자주 사용되는 프로토콜: TCP
P2P (Peer-to-Peer)
- 개인과 개인이 연결되어 통신되는 구조
- 개인이 서비스를 요청, 제공 모두 할 수 있음
- 파일 공유 서비스, streaming, VoIP (Skype)
- 자주 사용되는 프로토콜: UDP
클라이언트-서버 vs P2P 비교
Client-Server | Peer-To-Peer | |
기본 | 특정 서버와 클라이언트가 존재 | 서버와 클라이언트가 구분되어 있지 않음 모든 노드가 두 역할을 수행할 수 있음 |
서비스 | 클라이언트는 요청만 가능, 서버는 요청에 대해 응답 | 서비스를 제공하거나 받을 수 있음. |
초점 | 정보 제공 | 연결 자체 |
데이터 | 데이터는 중앙 서버에 존재 | 데이터는 각 개인에 의해 소유 |
서버 | 중앙형 서버에 많은 요청이 동시적으로 들어올 경우 병목현상이 생길 수 있음. | 분산된 서버에 의해 데이터가 제공됨으로 병목현상이 적음 |
구축 비용 | 비쌈 | 싸다 |
안정성 | 요청 기록에 따라 제어가 가능하기 때문에 시스템을 안정적으로 유지하기 쉽고 보안을 적용 할 수 있음 | 기록이 남지 않으므로 유지하기 어렵고 보안 적용이 힘듦 |
출처 : techdifferences.com/difference-between-client-server-and-peer-to-peer-network.html
'Computer Science 기본 지식 > 컴퓨터 네트워크' 카테고리의 다른 글
[네트워크] 네트워크 계층 (1) 라우터 / IP 프로토콜 (0) | 2021.01.07 |
---|---|
[네트워크] 전송 계층 (2) TCP 프로토콜 (0) | 2021.01.06 |
[네트워크] 전송 계층 (1) UDP 프로토콜 / 신뢰성있는 전송 (0) | 2021.01.06 |
[네트워크] 네트워크 계층 (2) IP 주소체계 / NAT / DHCP 프로토콜 (0) | 2021.01.05 |
[네트워크] TCP/IP 5계층과 Protocol Stack (0) | 2021.01.02 |