본문 바로가기
학교 수업/컴퓨터 네트워크

Transport layor - 1.2 개요 // 컴퓨터 네트워크

by Godgil 2020. 5. 5.

자, 나머지 개념들을 정리하기 전에, 먼저 Socket이라는 개념을 살펴보고 가자.

 

내가 1.1 개요에서 transport layor는 application의 메세지를 전송해준다 그랬잖아.

그러면 application에서 메세지를 전송해 달라고 요청을 해야겠지?

카카오톡 보낼 때 생각해 보자. 너네 카카오톡 전송할 때, 그냥 전송 버튼만 누르지,

transport layor한테 전달하고 막 그런거 안하잖아? 왜 그러냐면

transport layor는 기본적으로 운영체제에서 구현이 되어있어.

 

applcation과 운영체제(OS)는 분리가 되어있어. 이 분리되어 있는 둘 사이를 연결시켜주는게

바로 Socket이야. 쉽게 말하면 일종의 연결 통로야.

소켓 이미지

 

자, 또 설명해야 할 게 있는데,

여기서 멀티플렉서(MUX)와 디멀티플렉서(DEMUX)의 개념이 나와.

 

MUX는 여러 개의 아웃풋을 모아서 한 곳으로 내보내는 개념이고,

 

DEMUX는 한 곳으로 들어온 인풋들을 적절한곳으로 분배할때 사용해.

 

왜 필요하냐면, 하나의 컴퓨터엔 여러가지 Application이 동작하고 있고, 그에 따라서 많은 프로세스들이 동작하고 있어,

그런데, 이 많은 프로세스들이 운영체제에 구현되어있는 단 하나의 transport layor를 이용하는거야.

다시 말하지만 이건 하나밖에 없거든.

 

그래서 MUX가 필요해. MUX는 여러가지 Application들이 메세지를 보내달라고 요청을 하면 그게 한 곳으로 모여, 모여서 서로 다른 end system으로 분배되어서 가는거야.

 

그러면 당연히 반대로, 받는 쪽 입장에서는 서로 다른 application들을 향해서 메세지가 막 날아올텐데, 이것들이 운영체제에 구현되어 있는 하나의 통로를 따라서 온 다음 마지막에 분배가 되는거거든. 이렇게 따로따로 분배해서 전달 해 주는게 DEMUX야.

 

정리하자면,

여러개를 하나로 모아서 보내는게 MUX

하나로 오는 걸 여러개로 다시 분배하는게 DEMUX야.

대충 개념만 알고 넘어가자.

 

 

DEMUX는 분배해서 서로 다른 App들한테 전달해 주는 거라고 했지?

그렇다면 당연히, 누가 받아야 하는가에 대한 정보가 중요해

이 정보는 누가 관리할까? 당연히 Transport layor에서 관리 하는거야.

 

이 정보는 IP 주소와, port Number을 사용해서 보내는 쪽과 받는 쪽을 식별하는데,

먼저, IP 주소는 transport layor 다음 계층인 Network 계층에서 신경 써 주는 일이야.

무슨 말이냐면 "저기 수원에있는 어느 컴퓨터까지 가" 까지는 Network에서 해 줘.

 

이어서 그 컴퓨터에서 동작하고 있는 어떤 프로세스한테 줘야 하는지 식별하는게 Port number야.

 

 

자. 다시 한번 말 하지만, TCP에서 중요하게 생각하는건 두가지야

 

1. 송,수신측 입장에서는 내가 보낸 데이터가 상대방에게 잘 가는것

2. 각각이 보낸 데이터들로 인해서 네트워크 환경이 고통받으면 안되는것.

 

이렇게야. 두 번째는 왜 그러냐면 네트워크 환경이 막 붐비면 손실이 일어날 가능성이 있거든

쉽게 생각하면, 사람이 막 붐비고 복잡한 곳에서 미아들이 생기잖아? 마찬가지야 네트워크도.

 

 

댓글