Transport Layer는 Application Layer를 위해 일함과 동시에 Network Layer의 지원을 받습니다. Transport Layer가 담당하는 부분은 완성된 정보를 송수신하는 것입니다.
먼저 보내는 입장에 대해 설명 드리겠습니다.
상위 계층에서 Transport Layer는 데이터를 받고 Segmentation을 실행합니다. 그리고 정확한 송신을 위해서 Flow & Error Control을 수행합니다. 그리고 Header에 보내고 받는 곳의 Port number를 추가합니다. 그러면 이렇게 완성된 데이터를 바로 Network Layer로 보냅니다. (그리고 거기서 Network Layer가 보내는 거구요)
그리고 받는 입장에 대해 설명을 드리겠습니다.
위에서 언급했던 Header안에 들어있는 Port Number를 활용해 어떤 Application으로 보내야 할지 정합니다. 통상적으로 사용하는 Application의 Port number가 정해져 있기 때문에 신경을 쓰시지 않으셔도 됩니다. 물론 우리가 직접 정할 수도 있습니다. 이렇게 받게 되면 두 가지의 일을 합니다.
1. Segmentation and Reassembly
Session Layer에서 메시지를 받을 경우 Transport Layer는 이 메세지를 작게 잘라 Segments로 만듭니다. 그리고 Transport Layer의 마지막 도착 장소에서 이 잘린 Segments를 다시 합칩니다. 잘랐다 다시 붙이는 이유는 각 Segment별로 Header가 있는데 그 안에서 해당하는 곳으로 보내지기 때문입니다.
2. Service Point Addressing
받은 메시지가 정확하게 처리되기 위해서 Transport Layer의 Header에는 어디로 가야 하는지가 포함되어 있습니다.
이를 입력해 줍니다.
이런 Transport Layer를 활용하여 두 가지의 통신이 가능합니다.
1. Connection-Oriented Service
이 경우에는 세 가지의 단계가 있는데 Connection Establishment, Data Transfer 그리고 Termination/disconnection입니다. 이렇게 세가지 단계로 나뉘는 이유는 수신받는 기기에서 우리가 보낸 메시지에 대해 Acknowledgement(수신확인) 이루어지기 때문입니다. 그래서 이러한 통신을 좀 더 신뢰할 수 있습니다.(군대에서 복명복창과 유사한 방식입니다.)
2. Connectionless service
반대로 여기서는 Acknowlegement(수신확인)에 대한 과정이 없습니다. 그러면 어떤 장점이 있을까요? 빠르죠. 하지만 안타깝게도 통신이 제대로 됐는지에 대한 확인이 없기에 불안정하다는 평을 많이 받습니다.
자 그럼 이제 마지막으로 Software Layers: Session Layer, Presentation Layer 그리고 Application Layer에 대해 다음에 설명드리겠습니다. 복잡하고 이해가 안 되신다면 저의 설명 부족이니 걱정하지 마시고 일단은 읽어 보세요!
감사합니다.
그럼 도대체 Software Layers는 뭘까요?
참고자료
GeeksforGeeks: Layers of OSI Model
* 항상 정확한 정보를 드리고 싶지만 실수가 있을 수도 있습니다!
* 실수를 찾게 되거나 질문이 있으시면 댓글 달아주세요!!
'개발일반 > 도대체' 카테고리의 다른 글
도대체 컴퓨터 통신 및 네트워크는 뭘까요? (0) | 2023.02.27 |
---|---|
도대체 Software Layers는 무엇일까요? (2) | 2023.02.23 |
도대체 Physical, Data Link, Network Layer는 뭘까요? (4) | 2023.02.21 |
도대체 OSI Model은 뭘까요? : 7 Layers (0) | 2023.02.20 |
도대체 HTTPS는 뭘까요? (0) | 2023.02.17 |