CS/Network

02. 네트워크의 기준! 네트워크 모델

🥭맹2 2021. 3. 13. 23:59

링크: www.youtube.com/watch?v=y9nlT52SAcg

1. 네트워크 계층 모델

1) TCP/IP 모델

  • 1960년대 말 시작, 1980년대 초 프로토콜 모델로 공개
  • 현재의 인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 통신 규약(프로토콜)의 모음

TCP/IP 4계층

2) OSI 7계층 모델

  • 1984년 ISO에서 표준으로 지정한 모델
  • 데이터를 주고받을 때 데이터 자체의 흐름을 각 구간별로 나눠 놓은 것

OSI 7계층

  • 이더넷, IP, ICMP, ARP, TCP, UDP, HTTP 에 대해 깊게 공부해보겠다 !
    • HTTP는 웹 프로토콜
    • 나머지들은 알면 좋은데 프로토콜 구조까지는 알 필요 없음. 저 친구들은 프로토콜 구조까지 알고 있어야함.

2. TCP/IP모델과 OSI 7계층 모델 비교

TCP/IP와 OSI 비교

  • OSI는 통신 전반에 걸쳐서 논리적으로 역할 기반으로 나눠 놓은 것이고, TCP/IP는 네트워크를 통해 데이터를 전달할 때 그 기준 자체를 분류한 느낌

-> OSI는 논리적이고, TCP/IP는 실무적인 느낌이 강함

  • TCP/IP에서 1계층이 OSI는 1, 2계층으로 나누어져 있음. 굳이 나눈 ㄱㅣ분 ~!
  • 하지만 OSI를 면접에서 많이 물어본다 !

3. 네트워크를 통해 전달되는 데이터, 패킷(packet)

1) 패킷이란?

  • 패킷이란 네트워크 상에서 전달되는 데이터를 통칭하는 말

  • 네트워크에서 전달하는 데이터의 형식화된 블록

  • 패킷은 제어 정보와 사용자 데이터로 이루어지며 사용자 데이터는 페이로드라고도 함.

  • 여러 프로토콜들로 캡슐화 되어있음 !!

패킷은 쉽게 말해 요런 형상입니다 ! 
더 정확히 말하자면 요런 것들로 이뤄져있슴다

  • 페이로드(payload) : 실질적으로 보내려는 데이터 !
  • 풋터(footer)는 잘 안씀.
  • 대부분 헤더(header)만 사용

예시)

 

패킷의 모습
패킷 1

HTTP프로토콜을 페이로드로 해서, TCP라는 헤더를 붙였음 -> 하나의 패킷 완성, 얘를 패킷 1이라고 하면

 

패킷2

패킷1을 페이로드로 해서, IPv4라는 프로토콜을 헤더로 붙인것 -> 하나의 패킷 완성, 얘를 패킷 2라고 하면

 

최종 패킷

패킷2를 페이로드로 해서, Ethernet 프로토콜을 헤더로 붙인 것 -> 하나의 패킷 완성
 
결국 패킷은 계속 뭔가 붙을 수 있음 @

 

왜 마트료시카와 동일하다고 하는지 알겠쥬 ? ???????

2) 패킷을 이용한 통신과정 - 캡슐화

여러 프로토콜을 이용해서 최종적으로 보낼 때 패킷을 만드는 과정

 

캡슐화(encapsulation)

내가 보내는 데이터가 페이로드가 되어서, TCP가 헤더로 인캡슐레이션

상위계층에서 하위계층으로 내려가면서 프로토콜을 붙임.

하위 프로토콜 앞에 상위 프로토콜이 옴

TCP는 OSI 기준으로 4계층, IPv4는 3계층, Ethernet은 2계층

3) 패킷을 이용한 통신과정 - 디캡슐화

패킷을 받았을 때 프로토콜을 하나씩 확인하면서 데이터를 확인하는 과정

  • 하위 프로토콜부터 하나씩 까보면서 누가 나한테 어떤 데이터를, 어떻게 보냈는지 하나씩 까면서 확인하는 거

디캡슐화(decapsulation)
여러 프로토콜을 이용해서 최종적으로 받을 때 (디캡슐화)

4) 계층별 패킷의 이름 PDU(Protocol Data Unit)

계층별로 이름이 다른 PDU

세그먼트

4계층까지 붙은 것

세그먼트

패킷

3계층까지 붙은 것, 우리가 통상적으로 쓰는 패킷과는 다른 패킷임

  • 주로 패킷이라고 하면 네트워크 상에서 전달되는 데이터를 통칭함

패킷

프레임

2계층까지 붙은 것

프레임

4. 실습

1) 프로토콜의 캡슐화된 모습과 계층별 프로토콜들을 확인해보기

Wireshark를 이용하여 패킷을 캡쳐해보고 해당 패킷이 어떻게 캡슐화 되었는지 자세히 살펴본다.