2008. 6. 3. 13:41

프로토콜2 (HTTP & 세션 종료)

◆ HTTP 요청에 따른 전송.
3-way HandShake 를 통해서 서버와 통신을 하기위해 세션이 맺어 졌다면 이제 HTTP 통신을 할 차례입니다.

10.0.0.59 클라이언트에서 서버에
http://10.0.0.68/test/html 웹 페이지를 요청하였습니다.
그림에서는 Get /test.html  로서 요청한 페이지가 보여졌다는것을 알 수 있으며, 자세한 설명 창에서는 Accept-Language 등 클라이언트가 어떤 요청을 했는지 보여줍니다.

사용자 삽입 이미지

윗 그림과 아래 그림의 차이점이 있습니다. 물론 그림 캡쳐 방식이 약 간 다르긴 하지만(ㅡ.ㅡ;)

윗그림의 2번 패킷을 보면
HTTP/1.1 304 Not Modified
아래 그림의 2번 패킷은
HTTP/1.1 200 OK (text/html)

이렇게 됩니다. 그러나 이것은 클라이언트에서 서버에 동일하게
http://10.0.0.68/test.html 페이지를 요청했는데 동일시 나타나지 않은것입니다.

그 이유는 클라이언트의 웹 부라우져에
http://10.0.0.68/test.html 값이 남아 있다면 해당 페이지를 요청하였을시 아래와 같은 메세지(200K ok), 만약 페이지가 없다면 위와 같은 메세지(304 not..)가 나타납니다.
사용자 삽입 이미지


◆ 세션 종료
사용자 삽입 이미지

세션에 대한 종료를 위해서는 FIN패킷을 서버(B)에게 보내어 세션 중단을 요청 합니다
이방법 역시 3-Way HandShake 와 비슷한 방식으로 4-Way HandShanke 라고 합니다.