Search

TCP/IP & HTTP

TCP/IP

1.
OSI 7계층과 TCP/IP 4계층을 비교하여 설명해주세요.
OSI 7계층은 네트워크 통신을 이론적으로 7단계로 나눈 모델입니다(물리-데이터 링크-네트워크-전송-세션-표현-응용).
TCP/IP 4계층은 실제 인터넷 프로토콜 스택으로, OSI 모델을 단순화했습니다(네트워크 인터페이스-인터넷-전송-응용). 예를 들어, HTTP는 응용 계층, TCP는 전송 계층, IP는 인터넷 계층에 해당됩니다.
2.
TCP vs UDP를 비교해서 설명해 주세요.
TCP: 연결 지향적, 신뢰성 높음, 흐름 제어 및 혼잡 제어 지원. 예: 파일 전송, 웹 통신.
UDP: 비연결 지향적, 신뢰성 낮음, 실시간 전송에 적합. 예: 스트리밍, VoIP.
3.
3-way Handshake는 무엇이고 각 과정은 어떻게 되나요?
TCP 연결을 설정하는 과정입니다.
1.
클라이언트 → 서버: SYN 패킷 전송.
2.
서버 → 클라이언트: SYN-ACK 패킷 전송.
3.
클라이언트 → 서버: ACK 패킷 전송.
이 과정을 통해 양측은 통신 준비가 완료되었음을 확인합니다.

HTTP

1.
HTTP가 뭔지 설명해 주세요.
HTTP(HyperText Transfer Protocol)는 웹 서버와 클라이언트 간 데이터를 주고받기 위한 프로토콜입니다. Stateless 특성을 가지므로, 각 요청은 이전 요청과 독립적으로 처리됩니다. HTTPS는 HTTP에 암호화 레이어(TLS/SSL)를 추가해 보안을 강화한 버전입니다.
2.
GET vs POST를 비교 설명해주세요.
GET: URL에 데이터를 포함해 요청. 북마크나 캐싱 가능. 멱등성(동일 요청 → 동일 응답) 보장.
POST: 데이터를 본문에 포함해 요청. 북마크나 캐싱 불가. 서버의 상태를 변경할 때 사용(예: 회원가입).
3.
HTTP Status Code에 대해서 설명해 주세요.
1xx(정보): 요청 수신 확인.
2xx(성공): 200 OK, 201 Created.
3xx(리다이렉션): 301 Moved Permanently.
4xx(클라이언트 오류): 404 Not Found.
5xx(서버 오류): 500 Internal Server Error.
4.
www.google.com을 주소창에 쳤을 때 화면이 나오기까지의 과정을 설명해 주세요.
a.
DNS 조회: 브라우저는 로컬 DNS 캐시 → ISP의 DNS 서버를 거쳐 www.google.com의 IP 주소를 획득합니다.
b.
TCP 연결: 획득한 IP 주소로 3-way Handshake를 통해 TCP 연결을 설정합니다.
c.
HTTP 요청: GET 요청을 서버에 전송합니다.
d.
응답 처리: 서버는 HTML, CSS, JS 파일을 응답으로 보내고, 브라우저는 이를 렌더링해 화면에 표시합니다.