일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- Elk
- 프로그래밍
- 프로그래밍언어
- 자바 스프링
- 스프링 기초
- 리눅스
- 제이쉘
- JShell
- 초보코딩
- spring
- 클래스
- 스프링
- 메소드
- eclips
- 컴퓨터과학개론
- 알고리즘
- 프로그래밍기초
- 데이터베이스
- 초보코딩탈출
- github
- 자바프로그래밍
- 자바기초
- 배열
- 기초코딩
- Java
- 이클립스
- 자바
- JAVA기초
- 코딩초보
- Git
- Today
- Total
키보드워리어
[클라이언트와 서버] HTTP&Network Basic 책 정리 본문
안녕하세요 블로그 방문자 여러분, 반갑습니다. 오랜만에 인사드리네요.
오늘은 예전에 읽은 책을 공유드리고자 포스팅합니다 바로 시작합니다.
그림으로 배우는 HTTP & Network
부제: 대화가 필요해
1장 서버와 클라이언트의 대화에 필요한 것들
웹 브라우저에 네이버 를 검색하고 화면에 네이버 화면이 출력이 될 때 까지 내부적으로 어떤 동작들이 수행이 되는지 설명해주세요!
서버: 리소스를 가지고 있으며 제공하는 역할
클라이언트:서버에 의뢰를 하는 웹 브라우저
이런 일련의 흐름을 결정하는게 HTTP라 불리는 프로토콜입니다.
HTTP프로토콜(약속)을 이해하기 위해서
TCP와 IP 프로토콜에 대해 어느정도 알아야 합니다.
네트워크는 TCP/IP 프로토콜에 움직이며 HTTP는 그중 하나입니다.
참고로) 이 책에서는 TCP/IP 자세히 다루지 않고 개념만 설명해줍니다.
TCP/IP 4계층
애플리케이션 계층 -> DNS,FTP
트랜스포트 계층 -> TCP/UDP 데이터의 흐름을 제어
네트워크 계층 -> IP주소
링크계층: 하드웨어 측면
TCP/IP를 통한 통신흐름
클라이언트(송신측) | 서버(수신즉) |
---|---|
애플리케이션 계층 | 애플리케이션 계층 |
트랜스포트 계층 | 트랜스포트 계층 |
네트워크 계층 | 네트워크 계층 |
링크계층 | 링크계층 |
송신측(Request): 계층을 통과할때마다 헤더를 추가하며, 반대로
수신측(Response): 계층을 통과할때마다 헤더를 삭제
keyword: IP, TCP, DNS
IP: 주소를 가짐, 사람이 이해하기 힘듬
TCP: 소실될 우려 없음 (hand shake), 안전하단 뜻은 아님
DNS: 인간이 알아볼 수 있는 단어
2장 & 3장 간단한 프로토콜 HTTP
- 프로토콜에서 클라이언트와 서버는 무조건 존재하며 한쪽이 결정되면 잘 바뀌지 않습니다.
- 프로토콜은 리퀘스트와 리스폰스로 교환
클라이언트가 보내는 HTTP 프로토콜에는 메서드를 통해 임무를 준다.
메서드 | 설명 |
---|---|
GET | 리소스 취득 |
POST | 엔티티 바디전송 |
PUT | 파일 전송 |
HEAD | 메시지 헤더 취득 |
DELETE | 파일 삭제 |
OPTIONS | 서포트하고 있는 메서드 문의 |
TRACE | 경로 조사 |
CONNECT | 프록시에 터널링 요구 |
HTTP는 상태를 유지하지 않습니다. 이전에 보냈던 요청, 응답 기억하지 않는 특징
무상태 상황에서 맞닥트리는 문제가 로그인 상태
쿠키
: 쇼핑 사이트에 로그인했을때 누가 로그인했는지 기억해야 하는 상황 발생에서 해결할 수 있는 솔루션
4장 결과를 전달하는 코드
서버가 답합니다. 답할때 제공해주는 넘버
number | 설명 |
---|---|
1xx | 리퀘스트 처리중 |
2xx | 리퀘스트 처리완료 |
3xx | 추가동작 필요 |
4xx | 리퀘스트 이해불가능 |
5xx | 리퀘스트 처리 실패 |
5장 멀티 도메인
가상호스트
: 1대의 서버에서 멀티 도메인을 가질 수 있음
통신을 중계
: 프록시, 게이트웨이, 터널 (부제목 참고)
6장 HTTP 헤더
평소에는 볼 수 없지만 요청과 응답에 HTTP 헤더와 바디가 존재.
[HTTP메세지 구조]
메세지 헤더
: 클라이언트와 서버 처리에 주요 정보(메서드,URI,프로토콜버전 등)
메시지 바디
: 사용자와 리소스를 필요로 하는 정보 (HTML,CSS...)
[헤더필드의 역할]
HTTP/1.1에 정의되어있는 헤더 필드에는 47종류의 헤더 필드가 있다.
대분류
: 일반 필드, 리퀘스트 필드, 리스폰스 필드, 엔티티 헤더 필드
7장 HTTPS
HTTPS는 HTTP가 SSL을 덧씌운 상태
HTTP의 약점
* 평문이기 때문에 도청가능
* 통신 상대를 확인하지 않기 때문에 위장 가능
* 완전성을 증명할 수 없기 때문에 변조가능
HTTPS
: HTTP + 암호화 + 인증 + 완전성(변질성x) 보호
- HTTPS에서 차용한 SSL은 무엇인가?
비대칭키 알고리즘 (공개키 암호화방식이라고도 불림)
암호화된 키는 공개적이지만 복호화키는 개인키로 있어야 한다.
https://www.yes24.com/Product/Goods/15894097
그림으로 배우는 HTTP & Network - 예스24
이 책은 웹의 근간을 이루는 HTTP를 중심으로 하여 웹, 인터넷 데이터 통신 분야의 기초가 되는 내용들을 다루고 있다. 관련 분야를 배우고자 하는 독자들을 위해 만화 캐릭터와 일러스트를 활용
www.yes24.com
이상 부족한 컨텐츠 읽어주셔서 감사드립니다.
조금더 채울 내용들은 앞으로 차차 추가해 나갈 예정입니다.
내용 피드백이 있는 경우 댓글 부탁드립니다!
다음 포스팅 때 뵙겠습니다! 감사합니다 🤗
'개발 관련' 카테고리의 다른 글
[가상환경] VMware 설치 후 실행해보자 (0) | 2023.09.08 |
---|---|
[인프라 엔지니어의 교과서]8장 엔진엑스로 서버 이전을 고민하는 당신에게 (0) | 2023.09.07 |
[정보처리기사] 필기 과목 5 정리 (필기 81점 합격했네요ㅠㅠ) (0) | 2023.07.13 |
[정보처리기사] 필기 과목 4 정리 (0) | 2023.07.11 |
[정보처리기사] 필기 과목 3 정리 (0) | 2023.07.08 |