내일배움캠프 기술면접 10일차

Skadi·2024년 4월 8일
0

3. 기술면접 #8

Q1. OSI 7계층에 대해 아는대로 설명해주세요.

네트워크 통신을 일곱 개의 계층으로 분류하여 설명하는 방식입니다.
각 계층은 특정한 역할과 책임을 담당하여 네트워크 통신을 관리합니다.

  • 물리 계층 (Physical Layer):
    데이터를 전기적 신호로 변환하여 전송하는 역할을 합니다.
    케이블, 리피터, 허브 등이 이에 속합니다.
    통신 케이블: 데이터를 전송하는 데 사용되는 물리적인 매체입니다.
    허브(Hub): 데이터를 전달하는 역할을 합니다. 전기 신호를 증폭하여 다른 장비로 전송합니다.

  • 데이터 링크 계층 (Data Link Layer):
    물리 계층을 통해 전송된 데이터의 오류와 흐름을 관리합니다.
    맥 주소를 사용하여 통신하며, 프레임 단위로 데이터를 전송합니다.
    브리지, 스위치 등이 이에 속합니다.

  • 스위치(Switch): 네트워크에서 데이터를 스위치의 포트 간에 전달하거나
    필요한 포트로 전달하는 장치입니다.
    브리지(Bridge): 두 개의 네트워크를 연결하여 데이터를 전달하는 장치로,
    동일한 네트워크 프로토콜을 사용하는 세그먼트 간의 통신을 제공합니다.

  • 네트워크 계층 (Network Layer):
    데이터를 목적지까지 안전하고 빠르게 전달하는 역할을 합니다.
    IP 주소를 사용하여 경로를 선택하고 패킷을 전달합니다.
    라우터(Router): 여러 네트워크 간에 데이터를 전달하는 역할을 합니다.
    최적의 경로를 선택하고 패킷을 전송합니다.

  • 전송 계층 (Transport Layer):
    종단 간 통신을 제어하고 데이터의 전송을 보장합니다.
    데이터의 패킷화, 전송, 에러 제어, 흐름 제어를 담당합니다.
    TCP와 UDP 프로토콜이 이에 속합니다.
    TCP/IP 스택: 전송 계층에서 데이터의 신뢰성과 흐름 제어를 관리하는 소프트웨어입니다.

  • 세션 계층 (Session Layer):
    통신 세션을 설정, 유지, 종료하는 역할을 합니다.
    사용자들 간의 동기화와 통신 오류 복구를 담당합니다.

  • 표현 계층 (Presentation Layer):
    데이터 표현이 상이한 응용 프로세스의 독립성을 제공하고, 암호화합니다.
    데이터의 형식 변환, 암호화, 압축 등을 담당합니다.

  • 응용 계층 (Application Layer):
    최종 목적지로서 HTTP, FTP, SMTP, Telnet 등과 같은 프로토콜을 사용합니다.
    네트워크 소프트웨어 UI 부분과 사용자의 입출력(I/O) 부분을 담당합니다.
    HTTP 프로토콜을 통해 웹 서버와 웹 브라우저 간의 데이터 전송을 수행합니다.

Q2. 세션 기반 인증과 토큰 기반 인증의 차이에 대해 설명해주세요.

세션 기반 인증은 사용자가 로그인하면 서버에서 세션을 생성하고
이 세션 ID를 클라이언트에게 부여합니다.
클라이언트는 이 세션 ID를 쿠키 또는 URL 매개변수를 통해 서버에 전달하여 세션을 유지합니다.
서버는 세션 ID를 사용하여 사용자를 식별하고 인증합니다.
이 방식은 보안적 측면에서 일정한 위험성이 있을 수 있으며,
서버에 대한 부하도 발생할 수 있습니다.

토큰 기반 인증은 클라이언트가 로그인하면 서버에서 액세스 토큰을 발급합니다.
이 토큰은 클라이언트가 서버에 접속할 때마다 헤더에 실려서 전송됩니다.
서버는 이 토큰을 검증하여 클라이언트를 인증하고 요청을 처리합니다.
세션 기반 인증과 달리 서버에 세션을 유지할 필요가 없으며,
토큰 자체가 모든 인증 정보를 포함하므로 서버 부하나 보안 문제를 줄일 수 있습니다.

0개의 댓글