4. 각 계층 별 프로토콜의 특징 (1)

SJH·2024년 6월 11일
0
post-custom-banner

프로토콜의 정의

프로토콜이란?
원활한 통신을 위해 통신 시 지켜야할 절차나 규칙

OSI 7 Layer의 주요 프로토콜
★ 7계층 응용 계층 - HTTP, FTP, TELNET, SMTP, POP3, IMAP...
6계층 표현 계층 - SSL, ASCII...
5계층 세션 계층 - NetBIOS, RPC, WinSock...
★ 4계층 전송 계층 - TCP, UDP
★ 3계층 네트워크 계층 - IP, ICMP, IGMP...
2계층 데이터링크 계층 - Ethernet, HDLC, PPP
1계층 물리 계층 - RS-232, X.25/X.21

★ OSI 7계층 응용 계층의 주요 프로토콜

  • HTTP (HyperText Transfer Protocol) - 포트번호 80
    웹 상에서 웹 서버 및 웹 브라우저 상호 간의 데이터 전송을 위한 프로토콜

  • FTP (File Transfer Protocol) - 포트번호 : 데이터 전달 : 20 / 제어정보 전달 : 21
    서버와 클라이언트 간에 파일을 전송하기 위한 프로토콜

  • TELNET - 포트번호 23
    인터넷이나 로컬 영역 네트워크 연결에 쓰이는 네트워크 프로토콜
    보안문제로 사용이 감소하고 있으며, 원격제어를 위해 SSH(Secure Shell)로 대체

  • SMTP (Simple Mail Transfer Protocol) - 포트번호 25
    인터넷에서 메일을 송신하는 데 사용하는 프로토콜

  • POP3 (Post Office Protocol version 3) - 포트번호 110
    인터넷에서 메일을 수신하는 데 사용하는 프로토콜

  • IMAP (Internet Message Access Protocol) - 포트번호 143
    인터넷에서 메일을 수신하는 데 사용하는 프로토콜

FTP의 특징

FTP는 다른 프로토콜과 다르게 포트 번호가 두 개 존재
=> 20번 데이터 포트, 21번 제어 포트

  1. 데이터 포트
    데이터 포트는 20번으로 클라이언트와 서버 사이의 직접적인 파일 송수신을 담당

  2. 제어 포트
    제어 포트는 포트번호 21번으로 클라이언트와 서버 사이의 명령, 제어 등을 담당

FTP는 모드도 두 개가 존재하는데, 기본 설정으로는 Active mode로 설정

  1. Active mode
    클라이언트가 서버에게 연결할 데이터 포트를 알려주는 모드

  2. Passive mode
    서버가 클라이언트에게 연결할 데이터 포트를 알려주는 모드

FTP의 모드 - Active Mode

  1. 클라이언트는 서버의 21번 제어 포트로 접속

  2. 클라이언트는 자신이 사용할 두 번째 포트(5151)를 서버에 알림

  3. 서버는 클라이언트의 요청에 응답

  4. 서버의 20번 데이터 포트는 클라이언트가 알려준 두 번째 포트(5151)로의 접속 시도

  5. 클라이언트가 서버의 요청에 응답

클라이언트가 서버에게 연결할 데이터 포트를 알려주는 모드

FTP의 모드 - Passive Mode

FTP 클라이언트에 방화벽이 설치되어 있어 접속이 불가능한
상황일 때, Passive Mode 사용 가능

  1. 클라이언트는 서버의 21번 제어 포트로 접속

  2. 서버는 통신에 사용할 두 번째 포트(3267)를 클라이언트에 알림

  3. 클라이언트는 다른 포트를 열어 서버가 알려준 포트(3267)로 접속 시도

  4. 서버가 클라이언트의 요청에 응답

서버가 클라이언트에게 연결할 데이터 포트를 알려주는 모드

POP3와 IMAP의 특징 및 장단점

우리가 편지를 보낼 때, 우선 편지는 보낸 곳의 우체국에 있다가 받는 사람의 우체국으로 옮겨진 후, 우편집배원들이 각 편지의 주소지로 편지를 배달하여 최종적으로 편지를 받는 이에게 전달

여기서 POP3IMAP우체국 역할을 하는 메일 서버에서 최종 주소지로 편지를 전달해 주는 우편집배원 역할

POP3

장점

  • 편리한 용량 관리 : ​데이터를 자동 삭제하도록 설정할 수 있기 때문에 비교적 용량 관리가 쉬운 편

  • 저렴한 사용 요금 : 거의 모든 서비스 제공 업체가 POP3 환경을 지원하기 때문에 사용 요금이 저렴

단점

  • 보낸 이메일 보존 불가 : 아웃룩에서 보낸 편지는 웹 서버에 저장되지 않기 때문에 아웃룩 외에 다른 곳에서 보낸 데이터를 확인하기 어려움

  • 기기 관리의 어려움 : 저장된 기기 자체를 관리해야 하기 때문에, 하드 드라이브가 고장 나거나 PC에 바이러스가 생긴 경우 복구하기 어려움

  • 다운로드 이슈 발생 : 여러 디바이스에서 같은 메일을 계속 다운로드하다 보면, 중복 다운로드 및 사라짐 이슈 등이 발생할 가능성 증가

IMAP

장점

  • 동기화 : 아웃룩에서 보낸 데이터를 웹 또는 모바일에서 확인 가능

  • 안정적인 환경 : 다운로드 이슈가 발생하지 않아, 안정적인 환경에서 메일 송수신 가능

  • 편리한 멀티 디바이스 사용 : 언제 어떤 디바이스에서 접속해도 모든 속성이 동기화되어, 편리하게 사용 가능

단점

  • 용량 관리의 어려움 : 서버에 계속 데이터가 쌓이기 때문에, 용량 제한 서비스를 이용할 경우 용량 관리가 어려움

  • 비싼 도입 요금 : 모든 내용들을 동기화해야 해서 더 많은 트래픽이 필요하기 때문에 사용 요금이 비쌈

주요 차이점

동기화 여부

  • POP3 : 동기화 X

  • IMAP : 동기화 O

메일 데이터 관리

  • POP3 - 메일 서버 용량관리를 위해 메일 자동 삭제

  • IMAP - 사용자가 직접 수동으로 삭제

OSI 6계층 표현 계층의 프로토콜

SSL(Secure Socket Layer)

  • 네트워크 레이어의 암호화 방식, HTTP 뿐만 아니라, NNTP, FTP 등에도 사용

  • 인증, 암호화, 무결성 보장하는 프로토콜

ASCII(American Standard Code for Information Interchange)

  • 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기반
  • 7비트 인코딩, 33개의 출력 불가능한 제어 문자들과 공백을 비롯한 95개의 출력 가능한 문자

OSI 5계층 세션 계층의 프로토콜

NetBIOS

  • 네트워크의 기본적인 입출력을 정의한 규약

RPC(Remote Procedure Call)

  • Windows 운영 체제에서 사용하는 원격프로시저 호출 프로토콜

WinSock(Windows Socket)

  • 유닉스 등에서 TCP/IP 통신시 사용하는 Socket을 Windows에서 그대로 구현한 것

★ OSI 4계층 전송 계층의 프로토콜

TCP (Transmission Control Protocol)

  • 신뢰적인 연결지향성 서비스 제공

  • 3 Way-Handshaking과 4 Way-Handshaking 등을 활용한 신뢰성 있는 전송 기능

  • 멀티태스킹 불가능

UDP (User Datagram Protocol)

  • 비연결성이고 신뢰성이 없으며, 순서화되지 않은 Datagram 서비스 제공

  • 가상회선을 확립할 필요 X, 유연하고 효율적 응용의 데이터 전송에 사용

  • 실시간 응용 및 멀티태스킹 가능

★ OSI 3계층 네트워크 계층의 프로토콜

IP (Internet Protocol)

  • TCP/IP 기반의 인터넷 망을 통하여 데이터그램의 전달을 담당하는 프로토콜

  • 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당

ICMP (Internet Control Message Protocol) ★☆★

  • TCP/IP에서 IP패킷을 처리할 때 발생되는 문제, 오류 등을 알리는 역할

  • 오류 진단 등과 같이 IP계층에서 필요한 기타 기능들을 수행하기 위해 사용되는 프로토콜

IGMP (Internet Group Management Protocol)

  • IP 멀티캐스트를 실현하기 위한 통신 프로토콜

  • PC가 멀티캐스트로 통신할 수 있다는 것을 라우터에 통지하는 규약

ICMP의 오류 메시지 1 - Destination Unreachable (수신처 도달 불가)

  • Type 3

  • 라우터가 원격 시스템으로 가는 경로를 찾지 못한 경우

  • 목적지 시스템의 특정 포트 번호가 현재 응답할 수 없는 경우

  • 기타 여러 가지 문제가 발생한 경우일 때 생성

ICMP의 오류 메시지 2 - Redirect (라우트 변경)

  • Type 5

  • 라우터가 송신 시스템에서 특정 목적지로 가는 데 짧은 경로를 알리고자 할 때마다 사용

  • 일반적으로 Redirect 메시지는 여러 개의 라우터가 존재하는 네트워크에서 사용자가 하나의 기본 경로만을 정의한 다음,
    기본 라우터 외의 다른 라우터를 통해 특정 네트워크에 데이터그램을 전송해야 되는경우에 나타남.

  • 사용자가 '더 나은' 라우터로 데이터그램을 전송하지 않으면,
    기본 라우터는 Redirect에러 메시지를 통해 송신 시스템에 사용되어야 할 올바른 라우터를 알려줌.

ICMP의 오류 메시지 3 - Time Exceeded (시간 초과)

  • Type 11

  • 포워딩이나 재배열 작업이 너무 오래 걸려 보고하는 장비가 데이터를 소멸시킨다는 것을 나타냄.

  • 오류를 더 자세하게 보고하기 위해 ICMP Message Code필드를 사용하여 두 개의 다른 하위 메시지제공

OSI 2계층 데이터링크 계층의 프로토콜

Ethernet

  • 비연결성(connectionless)모드, 전송속도 10Mbps 이상, LAN 구현 방식을 말함

HDLC(High-Level Data-Link Control)

  • 고속 데이터 전송에 적합하고, 비트 전송을 기본으로 하는 범용의 데이터 링크 전송제어절차

PPP(Point-to-Point Protocol)

  • 전화선 같이 양단간 비동기 직렬 링크를 사용하는 두 컴퓨터간의 통신을 지원하는 프로토콜

OSI 1계층 물리 계층의 프로토콜

RS-232

  • 보통 15m이하 단거리에서 38400bps까지 전송을 위한 직렬 인터페이스

X.25 / X.21

  • X.25는 패킷교환망, X.21은 회선교환망에 대한 액세스 표준

보완점

  • TCP/IP 4계층으로 설명 X, 항상 OSI 7계층 기준으로 설명하기
  • TELNET은 암호화된 문이 아닌 평문으로 통신하기 때문에 보안이 좋지 않음 => 따라서 대체제 SSH(포트번호 22)로 통신
  • FTP 21번 포트는 FTP를 연결 / 20번 포트는 연결 상태에서 데이터 전달
  • 메일서버에 메일이 남느냐, 메일서버를 정기적으로 동기화하느냐에 따라 POP3 IMAP 구분
  • Active Mode는 데이터 전송 시 20번 포트로 통신하고,
    Passive Mode는 서버가 지정해주는 무작위 포트로 통신
  • POP3와 IMAP 프로토콜의 차이 잘 숙지하기
  • ICMP 오류메시지는 Destination Unreachable / Time Exceeded / Redirect 3가지 정도만 잘 알아두기
  • 각 프로토콜의 포트 번호는 반드시 외워두기

참고

https://yozm.wishket.com/magazine/questions/share/d9R7WQhubWSJmSQ0/
https://needjarvis.tistory.com/158
https://blog.naver.com/hai0416/221551014655
https://onecoin-life.com/19
https://www.easymedia.net/Culture/EasyStory/index.asp?no=172&mode=view&IDX=1170&p=1
https://itwiki.kr/w/FTP
https://eg-platform.com/news/security-issue/detail/1497
https://itwiki.kr/w/ICMP#ICMP_%EB%A9%94%EC%8B%9C%EC%A7%80
https://velog.io/@hsshin0602/%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-ICMPInternet-Control-Message-Protocol
https://blog.naver.com/lw_mailplug/221463114087

profile
보안, 클라우드 공부정리 블로그
post-custom-banner

0개의 댓글