본문 바로가기

리팩토링

6주차 [OSI 계층별 프로토콜]

프로토콜의 정의

- 프로토콜은 서로 다른 기기들간의 데이터 교환을 위해 표준화시켜 놓은 통신규약

    * 통신규약 : 상호간의 접속이나 전달방식, 통신방식, 주고받을 자료의 형식, 오류검출방식 등에 대해 정해진 약속

 

프로토콜의 기본요소

1) 구문(Syntax) : 전송하고자 하는 데이터의 형식, 부호화, 신호레벨 등을 규정

 

2) 의미(Semantics) : 두 기기간의 효율적이고 정확한 정보전송을 위한 협조사항과 오류 관리를 위한 제어정보를 규정

 

3) 시간(Timing) : 두 기기간의 통신속도, 메시지의 순서 제어등을 규정

 

1계층 프로토콜

1) RS-232 : 15m이하 단거리에서 38400bps까지 전송을 위한 직렬인터페이스 표준규격으로 통상 컴퓨터-터미널 등 다양한 기기와의 접속에 사용

 

2) X.25 : 패킷교환망에 대한 액세스 표준

 

3) X.21 : 회선교환망에 대한 액세스 표준

 

2계층 프로토콜

1) 이더넷

    LAN 구축을 위해 장치를 연결하는 프로토콜

 

2) HDLC

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

 

3) PPP

   전화선 같이 양단간 비동기 직렬 링크를 사용하는 두 PC간의 통신을 지원

 

3계층 프로토콜

1) IP

    패킷교환 네트워크에서 정보를 주고받는데 사용

    목적지 주소지정과 패킷 분할 및 조립기능을 담당

 

2) ICMP

    - IP패킷을 처리할 때 발생되는 문제의 통지 진단과 같이 IP 계층에서 필요한 기타기능을 수행

    - 데이터가 의도한 대상에 적시에 도달하는지 여부를 확인

    - ICMP 헤더구조

 

    - ICMP 타입의 종류

 

3) IGMP

   IP멀티캐스트를 실현, PC가 멀티캐스트 통신이 가능함을 라우터에 통지하는 규약

 

4) ARP

    네트워크상에서 IP주소를 MAC주소로 대응

 

5) RIP

    IGP의 일종, 표준라우팅 프로토콜에 주로사용

    30초마다 패킷을 브로드캐스트하여 라우팅 정보 업데이트

 

6) EGP

    다른 네트워크 그룹과 라우팅 정보를 교환하는 프로토콜

 

4계층 프로토콜

5계층 프로토콜

1) NetBios

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

 

2) RPC

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

 

3) WinSock

   유닉스 등에서 TCP/IP 통신시 사용하는 Socket 윈도우에서 구현

 

6계층 프로토콜

1) MPEG

    시간에 따라 연속적으로 변화하는 동영상 압축과 코드 표현을 통해 정보의 전송이 이루어지게 하는 프로토콜

 

2) ASCII

   영문 알바펫을 사용하는 대표적인 문자 인코딩

 

7계층 프로토콜

1) HTTP

WWW상에서 정보를 주고 받을 수 있는 프로토콜

주로 HTML 문서를 주고 받는데 쓰이며, 80번 포트 사용

 

2) SMTP / POP3 / IMAP

SMTP POP3 IMAP
메일을 주고 받을 때 사용하는 프로토콜
(클라이언트->서버, 서버->서버)
메일 서버에 수신된 메일을 클라이언트로 가져올 때 사용
(클라이언트에만 메일 저장)
POP3와 동일하게 수신된 메일을
클라이언트로
가져올 때 사용
(서버, 클라이언트 모두 메일 저장)
POP3 IMAP
장점 : 인터넷 연결 없이도 메일 열람이 가능하다
        
(다운 받아서 여는 형식), 서버 용량에 도움을 줄 수 있다.

 
단점 : 백업파일을 준비해놓지 않으면 사라진다, 캐싱이 아닌 완벽한 파일 전체를 다운로드 받는 것이기 때문에 바이러스에 취약하다.
장점 : 모든 메일이 서버에 저장된다, 모든 이메일을 볼 수 있고 세팅도 할 수 있고 이러한 설정들이 다른 기기에서도 적용된다. -> 동기화가 가능하다.
 
단점 : 인터넷이 연결되어 있어야 보는 것이 가능하다. (캐싱을 해서 local copies를 만들어서 보기 때문)

 

 

3) FTP

   - TCP/IP 프로토콜을 통해 서버와 클라이언트 사이의 파일전송을 위한 프로토콜

   - 사용자의 시스템과 원격 시스템 간에 파일을 송수신할 때 사용하는 통신규약

   -  FTP는 평문전송으로 인한 정보노출의 위험있기때문에 SFTP or FTPS 권장

   -  제어연결 : 21번 포트

      * 클라이언트에서 서버로 명령과 명령에 대한 서버의 응답을 위한 연결

   -  데이터 연결: 20번 포트

      * 실제파일을 전송하기 위해서 사용하는 연결

   -  전송모드 : 능동연결(Active Mode) 수동연결(Passive Mode)

 

능동연결(Active Mode)

1. 클라이언트가 서버의21번 포트로 접속 후 제어 채널을 생성하고

   클라이언트가 사용할2번째 포트번호(>1023)를 서버에 알려준다.

2. 서버는 이에ACK로 응답

3. 서버는20번 포트(data port)를 사용하여 클라이언트가 알려준2번째

    포트로 접속 후 데이터 채널을 생성한다.

4. 마지막으로 클라이언트가ACK로 응답한다.

 

Active Mode의 문제점

-TCP/IP의 특징인 클라이언트가 서버에 접속을 시도하는 것이 아닌

  서버가 클라이언트에 접속하는 방식

-클라이언트PC 내부적인 환경요인(ex. 방화벽, NAT)으로 접속을 허용하지

  않으면 데이터 채널 연결이 불가능

-외부적인 환경요인 때문에FTP 접속이 제대로 되지 않거나, 접속 후 데이터 목록을 받아오지 못하는 에러가 발생할 수 있음

 

 

수동연결(Passive Mode)

1. 클라이언트가 서버의21번 포트로 접속 후 제어 채널을 생성

2. 서버에서는 서버가 사용할 두 번째 포트(>=1024)를 알려준다

3. 클라이언트는 다른 포트를 열어 서버가 알려준 이 포트로 접속을 시도하여 데이터 채널을 생성한다.

4. 서버는ACK로 응답

 

Passive mode의 문제점

-data 포트(20번)를 사용하지 않고 동적 포트(>=1024)를 랜덤으로 사용하기 때문에 서버의 동적 포트를 전부 열어야 하는 보안상의 문제가 있음

 

 

 

 

 

4) TELNET

인터넷이나 로컬 영역 네트워크 연결에 쓰임

 

 

 

 

 

 

 

 

 

 

 

 

    

 

 

'리팩토링' 카테고리의 다른 글

8주차 [Firewall, DDos, IDS/IPS]  (0) 2024.04.15
7주차 [OSI 계층별 프로토콜](2)  (1) 2024.03.31
5주차 [OSI 계층별 장비]  (2) 2024.03.17
4주차 [TCP/UDP 특징 및 차이점]  (0) 2024.03.05
3주차 [OSI 7계층]  (0) 2024.03.05