본문 바로가기

네트워크

TCP/IP와 OSI 7계층

 

 

네트워크 (Network)

컴퓨터나 기타 기기들이 리소스를 공유하거나 데이터를 주고 받기 위해 유선 혹은 무선으로 연결된 통신 체계

 

  • 네트워크의 기능
    • 어플리케이션 목적에 맞는 통신 방법 제공
    • 신뢰할 수 있는 데이터 전송 방법 제공
    • 네트워크 간의 최적의 통신 경로 결정
    • 목적지로 데이터 전송
    • 노드 사이의 데이터 전송

네트워크에서 통신 기능이 제대로 동작하기 위해서는 참여자들 사이에서 약속된 통신 방법이 있어야 함

이 방법이 바로 네트워크 프로토콜!

즉 네트워크 통신을 하기 위해서 통신에 참여하는 주체들이 따라야 하는 형식, 규약, 절차

이 네트워크의 모든 기능을 단 하나의 프로토콜로 구현할 수 없음

그렇기때문에 모듈화를 통해 기능별로 구현을 해야함

각 기능들이 계층별로 동작하는 것 같아 보여 계층 구조 모델로 모델링을 한 것이 OSI 7계층!

 

OSI 7 layer와 TCP/IP 는 통신 절차를 표현한 모델이다. (데이터 전달 과정)

OSI 7 Layer를 간소화 한 모델이 TCP/IP 모델임.

인터넷은 TCP/IP 모델에 더 적합함

 

OSI (Open System Interconnection) 7계층 : 범용적인 네트워크 구조

컴퓨터 간의 통일된 소통 규격! (네트워크 표준 모델)
이 안에 TCP/IP 및 네트워크 통신에 사용되는 전반적인 프로토콜이 모두 포함되어 있음

 

1. 물리 계층 (bit) : 실제로 장치들을 연결하기 위한 물리적인 사항을 정의

2. 데이터 계층 (Frame) : 직접 접속되어 있는 노드와 노드 사이의 데이터 전달

3. 네트워크 계층 (packet) : 네트워크 통신 경로 선택 , IP 주소로 패킷을 보내줌

4. 전송 계층 (segment) : 네트워크의 통신 관리 (최종 프로세스로의 전달, 포트 주소)

5. 세션 계층 (message) : 통신 시작/종료 순서 (통신하는 프로세스 사이의 대화 제어 및 동기화)

6. 표현 계층 (message) : 데이터 표현 방법 (인코딩 및 데이터의 형식 차이를 조절)

7. 응용 계층 (message): 사용자에게 서비스 제공

https://velog.io/@hidaehyunlee/%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B0%80-%EC%A0%84%EB%8B%AC%EB%90%98%EB%8A%94-%EC%9B%90%EB%A6%AC-OSI-7%EA%B3%84%EC%B8%B5-%EB%AA%A8%EB%8D%B8%EA%B3%BC-TCPIP-%EB%AA%A8%EB%8D%B8

 

TCP / IP  (Transmission Control Protocol) / (Internet Protocol)

컴퓨터는 구조는 3단계로 이루어짐 -> (1) H/W (2) SW kernel mode (3) SW user mode

이 컴퓨터 구조 위에서 인터넷은 TCP/IP 모델로 설명 할 수 있음

전송 계층은 운영체제에서 구현이 됨

TCP는 패킷들을 재조립하고 손실된 패킷이 있다면 재요청함

(패킷 : 네트워크에서 사용하는 작게 분할된 데이터 조각으로 네트워크에서 전송되는 데이터 기본 단위)

인터넷 데이터 통신은 TCP/IP 두방식을 조합하여 진행됨

TCP는 신뢰성 있고 무결성을 보장하는 연결을 통해 데이터를 안전하게 전송하는 프로토콜

IP는 패킷들이 가장 효율적인 방법으로 최종 목적지로 갈 수 있도록 해주는 프로토콜 

TCP 계층과 응용 계층은 socket이라는 파일로 연결됨 

소켓은 프로세스가 열고 닫고 관리함

 

  • 계층 별 식별자
    • Access 계층의 식별자는 MAC 이고 이는 NIC (Lan 카드)를 식별함
    • 네트워크 계층의 식별자는 IP 주소이며 Host를 식별함
      Host는 인터넷에 연결된 컴퓨터이고 컴퓨터는 n개의 IP주소를 가질 수 있음
    • 전송 계층의 식별자는 Port 번호이고 프로세스, 서비스를 식별함
더보기
  • Network : 관계
  • Networking : 상호 작용

SW는 user mode와 kernel mode로 나뉨

User mode와 Kernel mode 예시 

Kernel : (TCP/IP) 프로토콜이 구현된 소프트웨어

User mode : 크롬

driver : H/W를 제어하기 위한 프로그램

 

  • 인터넷

인터넷 통신의 대부분은 패킷 통신으로 이루어짐

 

 

  • TCP/IP 계층

TCP/IP : 인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 프로토콜의 집합

패킷 통신 규약중 하나인 TCP와 IP는 인터넷 프로토콜을 아울러 지칭하는 용어 (IP <  TCP)

TCP/IP 계층에는 Application Layer + Transport Layer + Internet Layer + Network Access Layer가 있음

  •  
  •  
  • TCP/IP 흐름

1. 웹브라우저에 url 입력 = url을 가진 웹서버에 http request 메세지를 보내는 것

2. 메세지를 인터넷을 통해 웹서버로 전달하기 위해 패킷을 만들어야함

패킷에는 각 계층에 필요한 정보들이 담겨야함

 

  • 예시 : TCP/IP 연결을하여 파일을 다운로드하는 상황

 

 

 

 

 

 

 

 

https://www.youtube.com/watch?v=TBUaVzNkxFg