본문 바로가기

Computer Science/네트워크

07. 컴퓨터 프로그램끼리 데이터 주고 받는 방법 (4계층)

4계층 프로토콜

4계층에서 하는 일

  • 전송 계층(Transport Layer)는 송신자의 프로세스와 수신자의 프로세스를 연결하는 통신 서비스를 제공
  • 전송 계층은 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어, 그리고 다중화 같은 편리한 서비스 제공
  • 종류
    • 전송 제어 프로토콜(Transmission Control Protocol):  연결 지향 전송 방식을 사용
    • 사용자 데이터그램 프로토콜(User Datagram Protocol):보다 단순한 전송에 사용

UDP(User Datagram Protocol)

안전한 연결을 지향하지 않는 UDP 프로토콜 (전송 여부 미확인)

TCP(Transmission Control Protocol)

안전한 연결을 지향하는 TCP 프로토콜 (전송 여부 확인)

6분 46초


 

포트 번호

포트 번호의 특징

  • 특정 프로세스와 특정 프로세스가 통신을 하기 위해 사용
  • 하나의 포트는 하나의 프로세스만 가능
  • 하나의 프로세스가 여러 개의 포트를 사용하는 것은 가능
  • 포트 번호는 일반적으로 정해져 있지만, 무조건 지켜야하는 것은 아님
  • 예를 들어, 일반적으로 웹 서비스는 80번 포트를 사용하지만 무조건 80번 포트를 사용해야하는 것은 아님

Well-Known 포트

서비스 이름 포트 번호
FTP 20, 21
SSH 22
TELNET 23
DNS 53
DHCP 67, 68
TFTP 69
HTTP 80
HTTPS 443

유명한 서버들이 쓰는 포트 번호

  Registered 포트

서비스 이름 포트 번호
오라클 DB 서버 1521
MySQL 서버 3306
MS 원격 데스크탑 3389

일반 사용자들이 사용하는 포트는 Dynamic 포트라고 하며 49152번 ~ 65535번 중 사용


실습

현재 포트 활성 여부를 나타내는 활성 연결 테이블 확인하기

netstat -ano

활성 연결 테이블의 PID와 작업 관리자에서 프로그램의 PID 확인해보기

작업관리자 열에서 우클릭해서 PID를 활성화하면 PID 확인 가능

Berryz WebShare 사용해보기

Berryz WebShare 다운로드

서버 컴퓨터로 만들어주는 프로그램

1. 압축 해체 후 프로그램 Webshare.exe 실행

2. 환경 설정에서 포트번호를 9999 로 변경

3. 할당된 주소(그림에서는 192.168.219.104)로 접속해보기

접속 불가능 서버는 포트를 80번이라고 생각하고 있기 때문

 

주소 뒤에 서버 포트 번호를 따로 입력해줄 경우 접속 가능


네이버 주소에 뒤에 :443 붙여서 접속해보기

정상적으로 접속되는 것을 확인할 수 있음 (https 포트 번호는 443이다)


참고자료

https://www.youtube.com/watch?v=tG0ldt4sBzY&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=16

위 강의를 보고 정리한 글입니다.