TCP/http 개괄.

HJ seo·2022년 8월 16일
0

study

목록 보기
2/5

잡담

계속 뭔가 자신이 없어서 이 주제에 대해 글을 건드리지 못하고 있다가 왜지? 하고 곰곰히 생각해봤다. 그동안 읽었던 글들과 비교해서 무엇이 다른지 계속해서 비교해보니 내 글에 예쁘게 그림을 넣을 자신이 없었던 것이었다..!.. 이를 어떻게 해결할까? 하다가 그림에 대해 아무리 생각해도 자신이 없기 때문에 몰?루를 시전하며 내 방식대로 공부한 것을 일단 정리를 해보려고 한다.


참고

아무래도 블로그의 글들을 보며 공부한 것이기 때문에 먼저 참고한 글들의 링크를 올린다.(tcp가 무엇인지 공부하기 위해 찾은 것이고, 아래 순서는 보게된 시간순으로 나열한다.)

링크제목주인장
1번 글TCP란 무엇인가??(3way handshake/4way handshake)kim-dragon
2번 글What happens in a TLS handshake? | SSL handshakecloudflare
3번 글http와 tcp/ip의 이해hwan-shell
4번 글TCP/IP 4계층(TCP/IP 4 Layer)넌 잘하고 있어
5번 글TCP 프로토콜을 이용한 데이터 전송ITstory
6번 글SSL/TLS, SSHknq1130
7번 글HTTP와 TCP의 차이점sa1341
8번 글OSI 7 계층과 TCP/IP 계층inyong_pang
9번 글TCP/IP란 무엇이며 어떤 원리로 작동하나요?NordVPN
10번 글네트워크 접근 계층(Network Access Layer)IT에서 살아남기
11번 글[네트워크 이론]인터넷 계층(Internet Layer)허정호의 IT공장

이제 본격적으로 내가 이해한 내용을 풀어보자.


TCP란 무엇인지 설명하기에 앞서..

네크워크의 통신 구분.

네트워크에서 통신이 일어나는 방법을 나열하는 것은 2가지 방식으로 쓰일 수 있다.
하나는 OSI 7계층으로 각각은 차례대로 physical(L1), data-link(L2), session(L5), network(L3), transport(L4), presentation(L6), application(L7) layer들로 나누어져 있고,
다른 하나는 TCP/IP 4계층으로 각각은 network access(L1), internet(L2), transport(L3), application(L4) layer로 나누어져 있다.
(자세한 정보는 8번 글을 참고하면 좋다.)

이 두 가지는 통신을 어떻게 보는지에 대한 관점에 따라 나눠져있다. 그리고 이 글에서는 TCP/IP 4계층에 집중을 할 예정이다.

통신이 일어나는 방향.

통신이 일어나는 방향 자체는 선형으로 일어나게 된다. 사용자가 컴퓨터 혹은 그와 비슷한 기기를 사용하여 통신을 하면 L4(application)부터, 이후 차례대로 L1까지 갔다가 서버에서부터 거꾸로 L1 ~ L4까지 와서 사용자에게 정보를 보여준다. 이 때 통신은 단순히 한번 일어나는 것이 아니라 보안, 그리고 정보전달, 혹은 잘못된 주소등을 입력하는 문제 등으로 인해 잘 연결이 되는 경우도 있고, 그렇지 않은 경우도 있을 것이다.
(L1부터 L4까지의 각 역할이 나눠져있기 때문에 원하는 방식으로 쓰고 보니 설명이 뭔가 좀 많이 모호하다..)

각각의 layer가 하는 역할.

application layer(L4)

사용자가 컴퓨터와 직접 상호작용하는 구간으로 네크워크에 접촉하기 위한 시작부분이다. 크롬과 같이 인터넷을 통해 접촉하는 http(s) 혹은 파일 전송을 위한 ftp가 여기서 작동한다.

transport layer(L3)

글에서 설명할 메인인 TCP가 작동하는 영역으로 상호작용할 두 컴퓨터(UDP의 경우 일방향 통신이기 때문에 여러 컴퓨터들) 사이에 어떤 방식으로 통신이 이루어질지 세팅이 되는 구간이다.

internet layer(L2)

라우팅 기능과 네트워크 간의 연결을 제어하는 영역으로 IP가 작동하는 영역이다.(async, await, promise.)

network-access layer(L1)

외부 포트와 연결되는 영역으로 컴퓨터들간 연결이 잘 이루어졌는지, 이루어졌다면 규약에 따라 통신을 하고, 기계어로 데이터를 주고받는 등의 역할을 한다.

TCP.

다음 글에서..


cf. 여러 글들을 찾아 공부한 것이기 때문에 틀렸을 가능성이 있습니다! 만약 그러한 것이 눈에 띄신다면 코멘트 부탁드립니다. 감사합니다.

profile
다양한 분야에 관심이 많은 초보 개발자 입니다.

0개의 댓글