저번 포스팅에서 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 통신을 한다.
'SpringbootSecurity' 카테고리의 다른 글
SpringbootSecurity/RFC문서에 대한 개념 (0) | 2021.09.04 |
---|---|
SpringbootSecurity/JWT/JWT기본개념(CIA와 RSA에 대해 이해하기) (0) | 2021.09.02 |
SpringbootSecurity/JWT기본개념(세션에 고질적인 문제) (0) | 2021.09.02 |
SpringbootSecurity/Springboot로 네이버 로그인 해보기 (yml에서 provider 설정하기) (0) | 2021.09.01 |
SpringbootSecurity/Springboot로 페이스북 로그인 해보기 (0) | 2021.08.31 |