1. HTTP 통신
1-1. 방법
- 서버와 클라이언트 간에 요청과 응답으로 데이터를 주고 받는다.
- 예시) 브라우저에서 서버 URL로 접속 등
- 응답이 완료되면 서버와의 연결을 끊는다.
1-2. 특징
- Connectionless(무 연결)
- 클라이언트와 서버는 계속 연결된 상태가 아니다.
- 요청, 응답시 잠깐만 연결한다.
- TCP 프로토콜(연결지향. 서버가 허락해야만 송/수신 가능)에 특화 기능을 추가하여 사용.
- Stateless(무 상태)
- 서블릿 컨테이너 내에는 여러 개의 서블릿이 있는데, 각각의 서블릿에서 상태값(속성,변수값)을 다른 서블릿에서 공유해 쓸 수 없음을 의미한다.
1-3. 문제점
- 연결이 끊기면 유지되던 정보까지 모두 사라져 새로 연결을 해야만하는 번거로움이 있다.
2. HTTP 통신 문제 해결방안
2-1. Session
- 서버측의 데이터를 보관
- Cookie의 단점 중, 보안취약점을 보완하기 위해 사용한다.
- 로그인 유지정보 보관 등
- SessionID를 쿠키로 전달하지만 데이터 자체를 서버에 보관.
- Cookie와 다르게 정보를 Server에서 보관한다 (보안에 용이).
- 브라우저가 첫 요청시, 서버는 Session객체를 생성하고 이 객체의 ID(JSESSION)를 브라우저에 쿠키형식으로 전달한다. 이후 브라우저는 매 요청시 SESSIONID를 전달해 정보를 확인힌다.
- 브라우저가 종료되면 Session도 종료된다.
- Java 패키지:
jakarta.servlet.http.HttpSession

2-2. Cookie
- 클라이언트측의 데이터를 보관
- 사용자의 컴퓨터(브라우저 등)에 정보를 텍스트 파일로 저장한다.
- Map 형식.
- 데이터의 크기, 개수 제한 있음.
- 유지시간, 유효 디렉토리, 유효 도메인 등을 설정 가능.
- 간단하고 사용이 용이하지만 그만큼 보안에 취약하다.
- 만약 로그인 상태를 체크하는 정보를 쿠키에 저장한다면 다른 사람이 쉽게 로그인할 수 있다.
- Java 패키지:
jakarta.servlet.http.Cookie

'네트워크' 카테고리의 다른 글
| [DevOps] 컨테이너 기술 (0) | 2026.02.08 |
|---|---|
| [네트워크] SOAP과 REST의 차이 (0) | 2025.12.30 |
| [OSI] 4계층 - 전송 계층 (Transport Layer) (0) | 2025.12.23 |
| [OSI] 3계층 - 네트워크 계층 (Network Layer) (0) | 2025.12.23 |
| [OSI] 2계층 - 데이터 링크 계층(Data Link Layer) (0) | 2025.12.22 |