데이터가 네트워크를 통해 이동하는 것은 컴퓨터를 하면서 굉장히 중요한 부분중 하나이다.
컴퓨터를 이용해서 게임을 하거나 화상통화를 하거나 웹브라우저를 사용하는 모든 행동들은 네트워크 상의 데이터 패킷들을 주고 받는 과정에 기반을 두고 있다. 하지만, 이 모든 데이터 들이 우리의 컴퓨터에 동시에 도착하면, 어떻게 컴퓨터는 그들이 각기 어떤 애플리케이션에 속한 데이터인지 알 수 있을까?
이 질문에 대한 답은 TCP/IP 프로토콜과 포트(port)이다.
TCP/IP는 인터넷 프로토콜 스위트로서, 그 중심에는 두 가지 기본적인 프로토콜인 TCP가 있다. IP는 인터넷 프로토콜로서 데이터 패킷을 올바른 목적지로 보내는 데 쓰이며, TCP는 패킷들이 올바르게, 순서대로 도착했는지 확인하는 역할을 한다.
TCP/IP 패킷은 출발지 IP, 출발지 PORT, 목적지 IP, 목적지 PORT 등을 포함한다.
그렇다면 이 "PORT"라는 것은 무엇일까?
🤔 < PORT > 🤔
포트는 한 컴퓨터 내에서 네트워크 통신을 처리하는 여러 프로세스들을 구분하기 위한 개념이다.
각 애플리케이션은 고유한 포트 번호를 가지고 있으며, 이를 통해 동시에 수신된 데이터 패킷들을 알맞은 애플리케이션으로 정확하게 전달할 수 있다.
예를 들어, A라는 사람이 게임을 하며 8090번 포트를 사용하고 있고, 동시에 친구들과 화상통화를 하면서 21000번 포트를 사용하면서, 또 웹브라우저는 10010번 포트를 이용하고 있다면, 이 모든 데이터 패킷들은 각각의 포트 번호를 통해 올바른 애플리케이션으로 정확하게 전달될 것이다.
패킷이 발신될 때, 그 출발지 IP와 포트 정보도 함께 보내지기 때문에, 응답 패킷은 이 정보를 바탕으로 원래의 발신자에게 정확하게 돌아갈 수 있다.
포트 번호는 0에서 65535까지의 범위에서 할당될 수 있으며, 0에서 1023까지의 범위는 잘 알려진 포트로 예약되어 있다.
이 범위의 포트는 일반적으로 특정 서비스나 프로토콜에 대응된다. 예를 들어, FTP는 20과 21번, Telnet은 23번, HTTP는 80번, HTTPS는 443번 포트를 사용한다. 이 범위의 포트는 특별한 목적을 위해 예약되어 있으므로, 일반적으로 사용자 정의 애플리케이션에는 사용하지 않는 것이 좋다.
TCP/IP와 포트의 개념을 이해하면, 컴퓨터가 동시에 다양한 애플리케이션의 데이터를 어떻게 처리하는지 이해할 수 있게 된다.
Reference :모든 개발자를 위한 HTTP 웹 기본 지식
https://www.inflearn.com/
'HTTP 웹 기본 지식' 카테고리의 다른 글
URI (0) | 2023.05.30 |
---|---|
DNS (0) | 2023.05.29 |
HTTP 1.1/2.0/3.0 (0) | 2023.04.21 |
TCP/UDP (0) | 2023.04.20 |
html에서 이미지를 보는 방법 (0) | 2023.04.13 |