Code States/TIL

[0406] 네트워크 기초 - 소켓과 포트의 특징 및 차이점

ki1111m2 2023. 4. 6. 15:45
  • 소켓
    • 프로그램이 네트워크에서 데이터를 송수신 할 수 있도록 “네트워크 환경에서 클라이언트와 서버가 서로 연결할 수 있게 만들어진 연결부”를 의미함
    • 네트워크 상에서 돌아가는 두 개의 프로세스 간 양뱡향 통신에서 하나의 엔드포인트이며, 여기서 엔드포인트는 IP 주소와 포트 번호의 조합을 의미함
    • IP 주소는 데이터를 전달받을 호스트의 주소를 가리키고, 포트 번호는 그 데이터를 전달받을 호스트 안에서 원하는 프로세스를 찾는 용도로 사용됨
    • IP 주소, 포트 넘버, 프로토콜로 소켓을 정의할 수 있지만, 이것이 소켓을 유일하게 식별하진 않음
  • 포트
    • 네트워크 서비스나 특정 프로세스를 식별하는 논리 단위
    • 전송 제어 프로토콜(TCP)와 사용자 데이터그램 프로토콜(UDP) 등 주로 전송 계층 프로토콜에서 사용함
    • 각 포트는 번호로 구별되며 이 번호를 포트 번호라고 함
    • 0번 ~ 1023번: 잘 알려진 포트(well-known port)
    • 1024번 ~ 49151번: 등록된 포트(registered port)
    • 49152번 ~ 65535번: 동적 포트(dynamic port)
  • 차이점
    • 소켓은 인터넷 프로토콜을 기반으로 하는 컴퓨터 네트워크에서 발생하는 양방향 통신의 엔드포인트인 반면, 포트는 임시 파일이나 저장소를 사용하지 않고 데이터를 교환하는 데 사용할 수 있는 논리적 데이터 연결임
    • 소켓은 포트와 연관되어 있으며, 포트와 연관된 소켓은 여러 개가 존재할 수 있음
  • 출처