본문 바로가기
network

2. 네트워크의 기본 규칙

by 이쟝 2022. 8. 18.

본 포스팅은 모두의 네트워크 책을 읽고 요약한 것입니다.

 

프로토콜(protocol): 컴퓨터 간에 정보를 주고받을 때의 통신 방법에 대한 규칙이나 표준

  • 서버와 클라이언트끼리 어떤 방식으로 소통할 것인가 -> 통신 규약 
  • ex) HTTP, HTTPS, SSH, FTP, SFTP  등 
  • 각 프로토콜은 자주 쓰는 포트번호가 있는데 포트번호를 바꿔도 클라이언트, 서버 명세사항이 맞으면 기능에는 전혀 문제가 없다. 

 

Protocol Port Protocol Port Protocol Port
HTTP 80 HTTPS 443 SSH 22
FTP 21 MySQL 3306 SFTP 22

 

"www.naver.com"에 접근을 할 것이고, 443번 문을 통해서 https 방식으로 통신을 할 것이다.


[1. OSI 모델과 TCP/IP 모델]

OSI 모델(Open Systems Interconnection Reference Model)

  • 국제표준화기구(ISO)가 1977년에 정의한 국제 통신 표준 규약
  • 네트워크의 기본 구조를 7계층으로 나눠서 표준화한 통신 규약으로 현재 다른 모든 통신 규약의 기반(네트워크 기술의 기본)
  • 계층 대신 레이어라는 용어를 사용하기도 함
  • 이 OSI 7계층의 방식을 통해 데이터를 주고 받을 수 있는데 이 때 데이터는 맨 위의 응용 계층에서 순차적으로 아래 계층으로전달됨

 

계층 이름 설명 장비 전송단위 프로토콜
7계층 응용계층
(Application Layer)
이메일&파일전송, 웹 사이트 조회 등 애플리케이션에 대한 서비스 제공   Data HTTP,
FTP,
DNS,
DHCP,
SMTP
6계층 표현계층
(Presentation Layer)
문자 코드, 압축, 암호화 등의 데이터를 변환   Data JPEG,
MPEG,
AFP
5계층 세션계층
(Session Layer)
세션 체결, 통신 방식을 체결   Data SSH,
TLS
4계층 전송계층
(Transport Layer)
신뢰할 수 있는 통신을 구현 게이트웨이 Segment TCP,
UDP,
ARP
3계층 네트워크계층
(Network Layer)
다른 네트워크와 통신하기 위한 경로 설정 및 논리 주소를 결정 스위치(L3),
라우터
Packets IP,
ARP,
RARP,
ICMP,
IGMP
2계층 데이터링크계층
(Data Link Layer)
네트워크 기기 간의 데이터 전송 및 물리 주소를 결정 스위치(L2),
브릿지,
랜카드
Frames HDLC,
LAPB,
PPP,
LLC
1계층  물리계층
(Physical Layer)
시스템 간 물리적인 연결과 전기 신호를 변환 및 제어 허브,
리피터
Bits Ethernet,
RS-232C

 

  • 송신 측(데이터를 전송하는 측)은 데이터를 보내기 위해서 상위 계층(응용 계층)에서 하위 계층(물리 계층)으로 데이터를 전달
  • 수신 측(데이터를 받는 측)은 하위 계층(물리 계층)에서 상위 계층(응용 계층)으로 각 계층을 통해 전달된 데이터를 받게 됨
  • 각 계층은 독립적이기 때문에 데이터가 전달되는 동안에 다른 계층의 영향을 받지 않음

 

데이터가 주고받게 되는 과정

 

TCP/IP 모델(Transmission Control Protocol, Internet Protocol)

  • OSI 모델 7계층의 네트워크에서 데이터를 전송하는 과정을 4개 계층(Layer)으로 단순화시킨 모델

 

계층 이름 설명 전송단위 프로토콜
4계층 응용계층
(Application Layer)
OSI 모델의 5,6,7계층에 해당
다른 계층의 서비스에 접근할 수 있는 애플리케이션 제공
Data
Message
HTTP, FTP, DNS,
DHCP, SMTP
3계층 전송계층
(Transport Layer)
OSI 모델의 4계층에 해당, 자료의 송수신 담당
TCP/UDP에 대한 구분을 하고 데이터에 대한 제어 정보 포함
Segment TCP, UDP
2계층 인터넷계층
(Internet Layer)
OSI 모델의 3계층에 해당
네트워크상 최종 목적지까지 정확하게 연결되도록 연결성 제공
Packets IP, ARP, ICMP, IGMP
1계층 네트워크 접속 계층
(Network Access Layer / Network Interface Layer)
OSI 모델의 1,2 계층에 해당
데이터가 네트워크를 통해 어떻게 전송되는지 정의
에러 검출 기능 및 패킷의 프레임화 기능 수행
Frames Ethernet,
RS-232C

 

TCP/IP

 


[2. 캡슐화와 역캡슐화]

캡슐화: 컴퓨터 통신에서 상위 계층의 통신 프로토콜 정보를 데이터에 추가해 하위 계층으로 전송하는 기술

역캡슐화: 컴퓨터 통신에서 상위 계층의 통신 프로토콜에서 하위 계층에서 추가한 정보와 데이터를 분리하는 기술

  • 헤더: 데이터를 보낼 때 필요한 정보를 데이터에 추가하는 것(데이터에 앞 부분에 추가)
  • 데이터를 상대방에게 보낼 때 각 계층에서 헤더(데이터 링크 계층의 트레일러도 포함)를 붙여 나가는 것을 캡슐화라고 함
  • 트레일러: 데이터를 전달 할 때 마지막에 추가하는 정보
  • OSI 모델에서 데이터 송신 측은 응용 계층 -> 전송 계층 -> 네트워크 계층 -> 데이터 링크 계층 순서캡슐화
  • OSI 모델에서 데이터 수신 측은 데이터 링크 계층 -> 네트워크 계층 -> 전송 계층 -> 응용 계층 순서역캡슐화
  • 송신 측의 데이터 링크 계층에서 만들어진 데이터가 전기 신호로 변환되어 수신 측에 전송

 

캡슐화와 역캡슐화

 

캡슐화 과정

  1. 송신 측의 컴퓨터에서 웹 사이트에 접속하려면 응용 계층에선 웹사이트 접속하기 위한 데이터가 만들어진다.
  2. 데이터는 전송 계층에 전달되면서 신뢰할 수 있는 통신이 이루어지도록 응용 계층에서 만들어진 데이터에 헤더를 추가한다.
  3. 전송계층에서 헤더가 추가된 데이터를 다른 네트워크와 통신하기 위해 네트워크 계층에서 헤더를 추가한다.
  4. 네트워크 계층에서 만들어진 데이터에 물리적인 통신 채널을 연결하기 위해 데이터 링크 계층에서 헤더와 트레일러를 추가한다.
  5. 전송 계층 헤더, 네트워크 계층 헤더, 데이터링크 계층 헤더와 트레일러가 추가되서 데이터 링크 계층에서 만들어진 데이터는 최종적으로 전기 신호로 변환되서 수신 측에 도착!

역캡슐화 과정

  1. 수신 측에서는 각 계층의 헤더를 제거하며면서 데이터를 전달하고 반대로 데이터 링크 계층부터 순서대로 상위 계층으로 전달한다.
  2. 송신 측의 데이터 링크 계층에서 추가된 헤더와 트레일러를 수신측의 데이터 링크 계층에서 제거한다.
  3. 그 다음 네트워크 계층 헤더를 제거한다.
  4. 마지막으로 전송 계층의 헤더를 제거하면 모든 헤더가 제거된 데이터가 수신 측에 도착!

https://velog.io/@minj9_6/%EC%BA%A1%EC%8A%90%ED%99%94%EC%99%80-%EC%97%AD%EC%BA%A1%EC%8A%90%ED%99%94

https://minkwon4.tistory.com/283