2 분 소요

프로토콜과 표준

프로토콜

  • 네트워크 통신 규약
  • 두 컴퓨터 간 메시지를 이해하기 위해 메시지 형식을 정의해놓은 것

프로토콜 계층 구조

OSI 모델

각 계층 별 특징과 주요 장비(스위치, 라우터, NIC) 소개

1 계층 (Physical layer)

  • 물리적 연결과 관련된 정보를 정의한다.
  • 주소 개념이 없고, 전기 신호를 전달하는 것이 목적 : 전기 신호가 들어온 포트를 제외하고 모든 포트에 같은 전기 신호를 보낸다.
  • 주요 장비 :
    • 허브, 리피터 : 네트워크 통신을 중재하는 네트워크 장비
    • 케이블, 트랜시버 : 컴퓨터의 랜카드와 케이블을 연결하는 장치
    • 탭 : 네트워크 모니터링과 패킷 분석을 위해 전기 신호를 다른 장비로 복제해준다.
  • 전기 신호를 모아 우리가 알아볼 수 있는 데이터 형태로 처리 (직렬화)
  • 주소 정보를 정의하고 정확한 주소로 통신이 되도록 하는 것이 목적
    • 출발지와 도착지 주로를 확인하고 내게 보낸 것이 맞는지, 또는 내가 처리해야 하는지에 대해 검사한 후 데이터 처리를 수행한다.
    • MAC 주소 체계
    • 플로우 컨트롤 : 주소 체계가 생긴다는 의미는 한 명과 통신하는 것이 아니라 동시에 여러 명과 통신할 수 있다는 것이므로 무작정 데이터를 던지는 것이 아니라 받는 사람이 현재 데이터를 받을 수 있는지 확인하는 작업부터 해야한다. 이 역할을 Flow Control이라고 부른다.
  • 주요 장비
    • 네트워크 인터페이스 카드 (NIC) (=네트워크 카드, 랜 카드, 이더넷 카드, 네트워크 어댑터)
    • 스위치

3 계층 (Network Layer)

  • IP 주소와 같은 논리적인 주소가 정의됨.

image

  • MAC 주소와 달리, IP 주소는 사용자가 환경에 맞게 변경해 사용할 수 있고, 네트워크 주소 부분과 호스트 주소 부분으로 나뉜다.
  • 3계층을 이해할 수 있는 장비나 단말은 네트워크 주소 정보를 이용해 자신이 속한 네트워크와 원격지 네트워크를 구분할 수 있고 원격지 네트워크를 가려면 어디로 가야 하는지 경로를 지정하는 능력이 있다.

  • 주요 장비
    • 라우터 : IP 주소를 사용해 원격지까지 최적의 경로를 찾아주고 해당 경로로 패킷을 전송하는 역할을 한다.

    image

4 계층 (Transport Layer)

  • 하위 1,2,3 계층은 신호와 데이터를 올바른 위치로 보내고 실제 신호를 잘 만들어 보내는데 집중한다.
  • 반면 4계층은 실제로 해당 데이터들이 정상적으로 잘 보내지도록 확인하는 역할을 한다.
    • 패킷 네트워크는 데이터를 분할해 패킷에 실어보내다 보니 중간에 패킷이 유실되거나 순서가 바뀌는 경우가 발생한다.
    • 4계층에서는 위와 같은 문제를 해결하기 위해 패킷이 유실되거나 순서가 바뀌었을 때 바로잡아주는 역할을 한다.
    • 패킷 헤더에
      • [보내는 순서를 명시한 시퀀스 번호] + [받는 순서를 명시한 ACK 번호)가 있다.
      • 또한 장치 내의 많은 어플리케이션을 구분할 수 있도록 포트번호를 사용한다.
  • 주요 장비
    • (4계층) 로드밸런서
      • 포트 주소를 확인하는 동시에 IP 주소를 변경할 수 있다.
      • 주로 로드밸런서를 웹 서버 앞에 두고 웹 서버 여러 대를 두는 형식으로 사용된다 . 대표 IP는 로드 밸런서가 갖고 로드 밸런서가 각 웹 서버로 패킷의 목적지 IP 주소를 변경해 보내준다.
    • 방화벽
      • 방화벽을 통과하는 패킷의 3,4 계층 정보를 확인하고 패킷을 정책과 비교해 버리거나 포워딩한다.

5 계층 (Session Layer)

  • 양 끝단의 응용 프로세스가 연결을 성립하도록 도와주고,
  • 연결이 안정적으로 유지되도록 관리하고
  • 작업 완료 후에는 이 연결을 끊는 작업을 한다 .
  • TCP/IP 세션을 만들고 없애는 책임을 진다.
  • 또한 에러로 중단된 통신에 대한 에러 복구와 재전송도 수행한다 .

6 계층 (Presentation Layer)

  • 표현 방식이 다른 애플리케이션이나 시스템 간의 통신을 돕기 위해 하나의 통일된 구문 형식으로 변환시키는 기능을 수행한다. 일종의 번역기나 변환기 역할을 수행하는 계층
  • MIME 인코딩이나 암호화, 압축, 코드 변환과 같은 동작이 이 계층에서 이뤄진다.

7 계층 (Application Layer)

  • 애플리케이션 프로세스를 정의하고 애플리케이션 서비스를 수행한다.
  • 네트워크 소프트웨어의 UI 부분이나 사용자 입,출력 부분을 정의하는 것이 애플리케이션 계층의 역할이다.
  • 대표적인 프로토콜로 FTP, SMTP, HTTP, TELNET이 있다.

image