[Interview] 면접 준비 7일차

Kim Hyen Su·2024년 5월 29일

면접질문

목록 보기
7/27
post-thumbnail

면접 준비

예상 질문


쿠키, 세션의 개념과 차이를 설명해보세요

  • 쿠키와 세션 모두 간단한 데이터를 저장하는 공간을 의미합니다.
  • 쿠키는 브라우저에 저장되는 공간이며, 세션은 서버측에 저장되는 공간입니다.
  • 세션은 보안적인 측면에서 쿠키보다 안전하지만, 서버에 저장하기 때문에 서버 성능 저하의 원인이 될 수 있습니다.
  • 쿠키는 브라우저에 저장하기 때문에, 서버 성능과는 무관하지만 서버 외부에 저장되므로 보안적으로 취약합니다.

TCP/UDP에 대해서 설명해주세요.

  • 둘 다 TCP/IP 4계층에서 전송 계층의 프로토콜입니다.
  • TCP는 데이터를 전송하기 위해 발신자와 수신자 사이에 연결을 설정해야 하지만, UDP는 채널을 설정하거나 수신자가 준비되었는지 묻지 않고도 다른 기기로 패킷을 전송할 수 있습니다.
  • UDP는 데이터 패킷을 주문하거나 오류를 확인하지 않기 때문에 TCP보다 속도가 빠릅니다.
  • TCP는 UDP보다 더 안정적입니다. TCP에는 오류 검사 기능이 있고 데이터 패킷이 올바른 순서로 통신 애플리케이션에 전달되도록 보장합니다.
  • TCP가 UDP보다 약간 더 안전합니다. TCP는 모든 데이터 패킷을 추적하기 때문에 악성 데이터를 심기 더 어렵습니다.

TCP는 연결형 서비스로 3-way handshaking 과정을 통해 연결을 설정합니다. 그렇기 때문에 높은 신뢰성을 보장하지만 속도가 비교적 느리다는 단점이 있습니다. UDP는 비연결형 서비스로 3-way handshaking을 사용하지 않기 때문에 신뢰성이 떨어지는 단점이 있습니다. 하지만 수신 여부를 확인하지 않기 때문에 속도가 빠릅니다. TCP는 신뢰성이 중요한 파일 교환과 같은 경우에 쓰이고 UDP는 실시간성이 중요한 스트리밍에 자주 사용됩니다.

출처: https://mangkyu.tistory.com/91 [MangKyu's Diary:티스토리]

3-way handshaking 로 연결, 4-way handshaking

  • 3-way : sink, ack, 응답 여부확인
  • 4-way : 끊을게, ack, 끊어졌다, 아직 전송되지 않은 데이터를 확인

http, https 차이점에 대해 설명해주세요.

HTTP란 서버/클라이언트 모델에서 데이터 전송을 위한 프로토콜입니다.

즉, HTTP는 인터넷에서 하이퍼텍스트를 교환하기 위한 통신 규약으로, 80번 port를 사용합니다.

HTTP는 평문 데이터를 전송하기 때문에, 비밀번호나 주민등록번호 등과 같은 민감 정보를 주고 받을 때 제 3자가 열람이 가능합니다. 이러한 문제들이 HTTPS의 등장의 배경이 됩니다.

HTTPS란 HTTP에 데이터 암호화가 추가된 프로토콜입니다. HTTPS는 포트번호 443번을 사용하며, 네트워크 상에서 중간에 제 3자가 정보를 볼 수 없도록 암호화를 지원합니다.

결론, HTTP는 암호화가 추가되지 않았기 때문에 보안에 취약하지만, HTTPS는 안전하게 데이터를 주고 받을 수 있습니다. 하지만, HTTPS를 사용 시 암호화/복호화 과정이 추가되기 때문에 속도면에서 더 느립니다.(오늘날에는 그 차이가 미비합니다.) 또한, HTTPS는 인증서를 발급 및 유지하기 위한 유지 비용이 추가 발생합니다.

따라서, 개인정보와 같은 민감데이터를 주고 받을 때 HTTPS를 이용해야 하지만, 노출이 되어도 괜찮은 단순 정보의 경우 HTTP를 사용하면 됩니다.

profile
백엔드 서버 엔지니어

0개의 댓글