http 비연결성
tcp 연결성 : 프로세스 시작부터 종료까지 연결
2의 16승정도의 port 가 있고 1000개정도는 예약되어 있고,
연결되어 있으면 : client 가 요청을 보낼때 client 가 누군지 알고 있다.
http 는 : connectionless (비연결성이다)
요청할떄 연결이 된다. → client 에 응답을 보내면 연결이 끝는다.
서버입장에서는 누가 연결을 하는지 알 수가 없다.
http protocol 에서는 session , cookie 를 이용해서 처리를 한다.
웹기반 어플리케이션
비연결성
웹브라우저는 서버로 요청시 해당 서버(도메인) 에 설정된 쿠키 값을 항상 같이 전송한다.
서버가 클라이언트가 누군지 식별할 때 사용
cookie : 브라우저에 저장되는 정보 : 누군지 알기 위한 규약으로 제공하는 것.
(쿠키 확인하는 법 개발자 도구 → application → Storage → Cookies )
java 기반 서버는 요청을 받게 되면 해당 요청의 쿠키 정보 중에
JSESSIONID 라는 쿠키가 있는지 확인한다.
JSESSIONID 쿠키가 없을 경우
서버는 신규 접속 요청이라고 판단, session 을 새롭게 만들고 응답을 생성할 때 session ID(SESSIONID) 를 응답 헤더에 포함하고
해당 응답을 받은 브라우저는 JSESSIONID 쿠키 값을 브라우저에 저장
JSESSION 쿠키가 있을 경우
JSESSIONID 에 해당하는 SESSION 을 사용 ( 기존 접속한 사용자로 인식한다. )
session 은 사용자다.
쿠키는 웹브라우저에 저장이 되고, 보안이 취약하다. delete 키를 통해서 지울 수도 있다.
동일한 웹브라우저에서 작업을 했지만 JSESSIONID 가 있고 없고에 따라서 새로운 사용자로 인식한다.
JSESSIONID 를 이름 변경할 수 있다.