벨로그를 눈팅하다가 좋은 글을 발견해서,,, 하기 글의 질문들을 선정해서 면접 답변을 정리해보고자 합니다.
https://velog.io/@arthur/%EC%A7%80%EA%B8%88%EA%B9%8C%EC%A7%80-%EB%B0%9B%EC%95%98%EB%8D%98-%EC%8B%A0%EC%9E%85-%ED%94%84%EB%A1%A0%ED%8A%B8%EC%97%94%EB%93%9C-%EB%A9%B4%EC%A0%91-%EC%A7%88%EB%AC%B8%EB%93%A4
1.HTTP
1. 웹 프로토콜
- 웹에서 사용되는 통신 규약
- 통신 규약: 내가 이렇게 요청하면 넌 이렇게 해줘~를 약속 하는 것
- http, IP / MAC / ARP, TCP / UDP, DNS
2. HTTP
- 서버/클라이언트 모델을 따라 데이터를 주고받기 위한 프로토콜
- OSI 7계층 중에서는 7계층인 애플리케이션 레벨에 속하며 TCP/IP위에서 작동
- 상태를 갖고 있지 않은 Stateless 프로토콜
- Method, Path, Version, Header, Body 등으로 구성됨
3. HTTPS를 해야하는 이유
- 패킷 탈취, 클라이언트 위장할 수 있는 등의 보안문제로부터 사용자와 서비스를 보호
4. HTTPS HTTP의 차이점
- HTTP는 따로 암호화 과정을 거치지 않기 때문에 중간에 패킷을 가로챌 수 있고, 수정이 가능함
- 이를 보안하기 위해 HTTPS가 나옴
- HTTPS는 대칭키와 비대칭키 암호화를 모두 사용하여 안정성을 갖고 있음
- HTTP에 비해 HTTPS는 암호화/복호화 과정이 필요하여 속도가 느리다고함
2. OSI 7계층
- 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층간 상호 작동하는 방식
- 물리계층, 데이터링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층
1. OSI 7계층을 나눈 이유
- 통신이 일어나는 과정을 단계별로 파악할 수 있음
- 계층이 독립적으로 분리되어 있음 -> 특정 부분에 문제가 발생하면 다른 단계의 장비 및 소프트웨어를 건드리지 않아도 문제가 발생한 단계만 고치면 됨
REF
https://github.com/woowacourse-study/2022-ConquerCS/blob/main/2%EC%A3%BC%EC%B0%A8/%EB%A0%89%EC%8A%A4/HTTP%20vs%20HTTPS.md