본문 바로가기

Today I Learned (TIL)

기술면접 대비 네트워크 관련 예상 질문

728x90
반응형

1,HTTPS의 원리를 설명해주실 수 있을까요?     

HTTPS(Hyper Text Transfer Protocol Secure)는 웹 브라우저와 웹 서버 간의 통신을 암호화하여 보안을 강화한 프로토콜입니다.
HTTPS는 SSL(Secure Sockets Layer) 또는 TLS(Transport Layer Security) 프로토콜을 사용하여 데이터를 암호화합니다.
클라이언트와 서버는 SSL/TLS 핸드셰이크 과정을 통해 상호 인증하고, 암호화 키를 교환합니다.
이후 모든 데이터는 대칭키 암호화 알고리즘으로 암호화되어 전송됩니다.
서버는 인증서를 사용하여 자신의 신원을 증명하고, 이를 통해 중간자 공격을 방지합니다.

 

2,TCP 3 way handshake란 무엇인지 설명해주실 수 있을까요?

TCP 통신을 시작하기 전에 클라이언트와 서버 간에 연결을 설정하는 과정입니다.
클라이언트 → 서버: SYN(Synchronize Sequence Number) 패킷 전송
서버 → 클라이언트: SYN+ACK(Acknowledgment) 패킷 전송
클라이언트 → 서버: ACK 패킷 전송
이 과정을 통해 양방향 통신을 위한 초기 순차 번호(Sequence Number)와 확인 응답 번호(Acknowledgment Number)가 교환됩니다.

 

3,TCP 와 UDP 를 비교하여 설명해주실 수 있을까요?

TCP(Transmission Control Protocol)는 연결형 프로토콜입니다.
신뢰성 있는 데이터 전송을 보장합니다.
혼잡 제어, 순서 보장, 오류 검출 및 재전송 기능이 있습니다.
연결 설정 및 종료 과정이 있어 오버헤드가 발생합니다.
UDP(User Datagram Protocol)는 비연결형 프로토콜입니다.
데이터 전송의 신뢰성을 보장하지 않습니다.
단순히 데이터그램을 전송하는 역할만 합니다.
오버헤드가 적어 실시간 멀티미디어 스트리밍에 적합합니다.
TCP에 비해 속도가 빠릅니다

 

4,CORS란 무엇이고 어떻게 구현할 수 있나요?

CORS는 웹 브라우저의 동일 출처 정책(Same-Origin Policy)을 완화하기 위한 메커니즘입니다.
동일 출처 정책은 스크립트가 다른 출처(도메인, 프로토콜, 포트가 다른 경우)의 리소스에 접근하는 것을 제한합니다.
CORS는 서버 측에서 HTTP 헤더를 통해 다른 출처의 리소스 접근을 허용할 수 있습니다.
서버는 Access-Control-Allow-Origin 헤더를 설정하여 허용할 출처를 지정합니다.
서버는 Access-Control-Allow-Methods, Access-Control-Allow-Headers 등의 헤더를 추가로 설정할 수 있습니다.
브라우저는 이 헤더 정보를 기반으로 리소스 접근 여부를 결정합니다.

 


5, Base64 인코딩이란 무엇인가요?

Base64 인코딩은 바이너리 데이터를 ASCII 문자열로 변환하는 방식

목적
8비트 바이너리 데이터를 7비트로 된 ASCII 문자열로 변환하여 전송 및 저장 시 데이터 손실을 방지합니다.
이진 데이터를 텍스트로 표현하여 텍스트 기반 프로토콜에서 데이터를 전송할 수 있습니다.
인코딩 원리
3바이트(24비트)를 4개의 6비트 단위로 나눕니다.
각 6비트 값을 Base64 문자 집합(A-Z, a-z, 0-9, +, /)에 매핑합니다.
끝 부분에 남은 비트는 '='로 패딩합니다.
장단점
장점: 이진 데이터를 텍스트로 표현할 수 있어 전송 및 저장이 용이합니다.
단점: 인코딩 과정에서 33% 용량 증가가 발생합니다.
사용 예시
이미지, 비디오, 오디오 등의 바이너리 데이터 전송
암호화된 데이터 전송
이메일 본문에 첨부 파일 포함
웹 애플리케이션에서 데이터 전송
Base64는 인터넷 전송 프로토콜에서 많이 사용되며, 바이너리 데이터를 안전하게 전송하고 저장할 수 있는 편리한 인코딩 방식

728x90
반응형