기술면접 질문 정리 - 네트워크

devJune·2023년 8월 31일
0

면접 질문 정리

목록 보기
2/2

HTTP 프로토콜에 대해 설명

HTTP(Hyper Text Transfer Protocol)이란 데이터를 주고 받기 위한 프로토콜이며, 서버/클라이언트 모델을 따른다.

Http 상태 정보를 저장하지 않는 Stateless의 특징과 클라이언트의 요청에 맞는 응답을 보낸 후 연결을 끊는 Connectionless의 특징을 가지고 있다.

  • 장점
    • 통신간의 연결 상태 처리나 상태 정보를 관리할 필요가 없어 서버 디자인이 간단하다.
    • 각각의 HTTP 요청에 독립적으로 응답만 보내주면 된다.
  • 단점
    • 이전 통신의 정보를 모르기 때문에 매번 인증을 해줘야한다.
    • 이를 해결하기 위해 쿠키, 세션을 사용해서 데이터를 처리한다.

HTTP와 HTTPS의 차이점은 무엇인가요?

HTTP는 평문 데이터를 전송하는 프로토콜이기 때문에, HTTP로 중요한 정보를 주고 받으면 제 3자에 의해 조회될 수 있습니다.

이러한 문제를 해결하기 위해 HTTP암호화가 추가된 프로토콜이 HTTPS 입니다.

즉 HTTPS는 SSL의 껍질을 덮어쓴 HTTP라고 할 수 있습니다.

쿠키와 세션의 차이점은?

쿠키는 사용자의 컴퓨터에 저장하는 작은 기록정보 파일이다. HTTP에 클라이언트의 상태정보를 PC에 저장했다가 필요시 정보를 참조하거나 재사용할수 있다.

세션은 일정 시간동안 같은 사용자로부터 들어오는 일련의 요구를 하나의 상태로 보고, 그상태를 유지시키는 기술입니다.

즉, 방문자가 웹 서버에 접속해 있는 상태를 하나의 단위로 보고 그것을 세션이라고 한다.

GOOGLE.COM에를 입력할 때 과정에 대해서 설명하라(웹 동작 방식의 이해)

  1. 브라우저는 먼저 해당 URL이 DNS(Domain Name System) 서버에 등록되어 있는지 확인합니다.
  2. DNS 서버에 요청하여 "google.com" 도메인의 IP 주소를 받아옵니다.
  3. 받아온 IP 주소로 HTTP 요청 메시지를 생성합니다.
  4. HTTP 요청 메시지를 서버로 보내고, 서버는 요청을 받아들이고 응답 메시지를 생성하여 클라이언트(브라우저)에 전송합니다.
  5. 응답 메시지를 받아 브라우저는 이를 해석하여 적절한 컨텐츠를 화면에 띄웁니다.

보통 위 과정에서 사용하는 프로토콜은 HTTP입니다. 하지만 HTTPS를 사용하는 경우, 4번 과정에서 TLS(Tansport Layer Security) 프로토콜을 사용하여 데이터를 암호화하여 전송합니다.

TCP와 UDP 의 차이를 설명하라

TCP는 연결형 서비스로 3-WAY handshaking 과정을 통해 연결을 설정하기 때문에 높은 신뢰성을 보장하지만 속도가 비교적 느리다는 단점이있다.

UDP는 비연결형 서비스로 3-way handshaking을 사용하지 않기 때문에 신뢰성이 떨어지는 단점이 있지만, 데이터 수신여부를 확인하지 않기 때문에 속도가 빠르다는 장점이 있습니다.

3 way-handshake 와 4 way-handshake를 설명해주세요.

  • 3 way-handshake란 TCP 네트워크에서 통신 하는 장치가 서로 연결이 잘 되었는지 확인하는 방법입니다. 송신자와 수신자는 총 3번에 걸쳐 데이터를 주고 받으며 통신이 가능한 상태인지 확인합니다.

  • 4 way-handshake란 TCP 네트워크에서 통신 하는 장치의 연결을 해제하는 방법입니다. 송신자와 수신자는 총 4번에 걸쳐 데이터를 주고 받으며 연결을 끊습니다.

GET과 POST의 차이에 대해 설명해달라.

GET은 데이터를 조회하기 위해 사용되는 방식으로 데이터를 헤더에 추가하여 전송하는 방식입니다.
URL에 데이터가 노출되므로 보안적으로 중요한 데이터를 포함해서는 안됩니다.

POST는 데이터를 추가 또는 수정하기 위해 사용되는 방식으로 데이터를 바디에 추가하여 전송하는 방식입니다.
완전히 안전하다는 것은 아니지만 URL에 데이터가 노출되지 않아 GET 보다는 안전합니다.

공인 ip와 사설 IP의 차이에 대해서 설명해달라.

  • 공인 IP는 ISP(인터넷 서비스 공급자)가 제공하는 IP 주소이며, 외부에 공개되어 있는 IP주소 입니다.

  • 사설 IP는 일반 가정이나 회사 내 등에 할당된 네트워크 IP 주소이며, IPv4의 주소부족으로 인해 서브넷팅된 IP이기 때문에 라우터(공유기)에 의해 로컬 네트워크상의 PC나 장치에 할당됩니다.

  • 사설 IP 주소만으로는 인터넷에 직접 연결할 수 없고, 라우터를 통해 1개의 공인 IP를 할당하고, 라우터에 연결된 개인 PC는 사설 IP를 각각 할당 받아 인터넷에 접속 할 수 있습니다.

참고사이트

https://dev-coco.tistory.com/161

profile
지식 저장소

0개의 댓글