SpringbootSecurity

SpringbootSecurity/JWT/JWT기본개념(TCP에 대해 이해하기)

25G 2021. 9. 2. 10:06

저번 포스팅에서 Session에 대한 이해와 더해서 JWT를 이해하기 위해선 TCP도 알고 있어야 한다.

어떤 새로운 기술을 배울 때 그 기술이 원초적으로 이해가 되지 않는다면 그 기술에 대한 배경지식이 많이 부족하다는 것이다. 그래서 그 기술을 기술적으로 사용할 수 있게 된다고 해도 이해를 하지 않았기 때문에 금방 까먹고 새로운 기술이 나오면 처음부터 다시 배우는 느낌이 들 수밖에 없다.

그렇기 때문에 이런 배경지식을 먼저 이해하는 것이 중요한 것 같다

 

osi 7 계층에 대한 자세한 내용은 따로 포스팅이 되어있습니다!

웹에는 OSI 7 계층이라는 것이 있다. 이걸이해해야 TCP/IP를 알게되고 그래야 보안을 이해하면서 왜 JWT가 나오는지 알수 있게되는 것이다.

 

OSI 7계층

1. 응용계층 : 응용프로그램 사용(게임, 메일 등등)

2. 프레젠테이션 계층 : 암호화, 압축

3. 세션 계층 : 인증 체크

4. 트랜스포트 계층 : TCP 통신 or UDP 통신

5. 네트워크 계층 : IP

------------------------여기까지 WAN통신----------------------------

6. 데이터링크 계층 : 어떤 컴퓨터나 기기로 통신해줘야 할지 라우팅

7. 물리 계층 : 광섬유 케이블 같은 실제 전기선

------------------------여기까지 LAN 통신 -----------------------------

그럼 모든 통신에는 한번 통신이 일어날 때마다 이 과정을 직렬화와 역직렬화를 거친다

직렬화는 위 계층을 1234567 순으로 통과하는 것이고 역직렬화는 7654321을 통과하는 것이다.

 

 

TCP는 신뢰성 있는 통신이다.

안녕을 전송하면 응답받은 쪽에서 잘 받았다고 응답을받았다는 신호를 보내고 안녕이라고 전송한측에서 다시 응답을 받았다는 신호를 잘받았다고 안녕을 보낸 쪽으로 한 번 더 신호를 보내는 것이다.

한 번의 정보교환에 3번의 통신이 발생한다.

UDP는 신뢰성이 없고 연속적인 통신이다.(대표적으로 전화나 게임이 있다)

 

그리고 우리가 공부하는 웹은 TCP 통신을 한다.