[개발자 인터뷰] TCP/IP 4계층

Joey Hong·2020년 10월 15일
11

⛄️ OSI 7계층 vs TCP/ICP 4계층

계층 모형
TCP/IP 모형은 현재의 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신규약(프로토콜)의 모음으로 각 계층은 담당하는 위치마다 처리 역할을 구분해 진행함으로 서로 간의 간섭을 최소화하여 사용의 편리성을 높힌다

  • 호환성 보장(다른 제조사 장비들끼리도 통신 가능)으로 인한 비용 절감
  • 쉬운 문제 해결(계층별로 문제 확인 가능)
  • 다른 계층끼리는 각 전달 과정을 알 필요없어 데이타의 캡슐화(헤더첨부)와 은닉이 가능
  • 국제표준화기구 IOS(International Organization for Standardization)에서는 상호 이질적인 네트워크간의 연결에서 호환성의 결여를 막기위해 OSI(Open Systems Interconnection) 모형을 개발했다.
  • 실제 사용되는 TCP/IP는 OSI 참조 모델을 기반으로 상업적이고 실무적으로 이용될 수 있도록 단순화된 모형이다
    • 네트워크 전송 시 데이터 표준을 정리한 것이 OSI 7계층, 이 이론을 실제 사용하는 인터넷 표준이 TCP/IP 4계층이다.
  • OSI 7계층을 4-5계층으로 분류하여 적용할 수 있다.

☃️ TCP/IP 4계층

TCP/IP 4계층역할데이타 단위전송 주소예시장비
응용 계층(Application)응용프로그램 간의 데이타 송수신Data/Message-파일 전송, 이메일, FTP, HTTP, SSH, Telnet, DNS, SMTP 등-
전송 계층(Transport)호스트 간의 자료 송수신SegmentPortTCP, UDP, RTP, RTCP 등게이트웨이
인터넷 계층(Internet)데이타 전송을 위한 논리적 주소 지정 및 경로 지정PacketIPIP, ARP, ICMP, RARP, OSPF라우터
네트워크 연결 계층(Network Access)실제 데이타인 프레임을 송수신FrameMACEthernet, PPP, Token Ring 등브리지, 스위치

❄️ L4 응용 계층(Application Layer)

데이타 단위: Data/Message

  • 사용자와 가장 가까운 계층으로 사용자가 소프트웨어 application과 소통할 수 있게 해준다
  • 응용프로그램(application)들이 데이터를 교환하기 위해 사용되는 프로토콜
  • 사용자 응용프로그램 인터페이스를 담당

예시

파일 전송, 이메일, FTP, HTTP, SSH, Telnet, DNS, SMTP 등

❄️ L3 전송 계층(Transport Layer)

데이타 단위: Segment
전송 주소: Port

  • 통신 노드 간의 연결 제어 및 자료 송수신을 담당
  • 애플리케이션 계층의 세션과 데이터그램 통신서비스 제공
  • 세그먼트 (Segment)단위의 데이타 구성
    • 실질적인 데이터 전송을 위해 데이타를 일정 크기로 나눈 것. 발신, 수신, 포트주소, 오류검출코드가 붙게된다

예시

TCP, UDP, RTP, RTCP 등

❄️ L2 인터넷 계층(Internet Layer)

데이타 단위: 패킷
전송 주소: IP

  • 네트워크상 최종 목적지까지 정확하게 연결되도록 연결성을 제공
  • 단말을 구분하기위해 논리적인 주소(Logical Address) IP를 할당
    • 출발지와 목적지의 논리적 주소가 담겨있는 IP datagram이라는 패킷으로 데이타를 변경
    • 데이터 전송을 위한 주소 지정
  • 라우팅(Routing) 기능을 처리
    • 경로 설정
  • 최종 목적지까지 정확하게 연결되도록 연경성 제공
  • 패킷단위의 데이타 구성
    • 세그먼트를 목적지까지 전송하기 위해 시작 주소와 목적지의 논리적 주소를 붙인 단위. 데이타 + IP Header

예시

IP, ARP, ICMP, RARP, OSPF

❄️ L1 네트워크 연결 계층(Network Access Layer/Network Interface Layer)

데이타 단위: 프레임
전송 주소: MAC

  • 물리적으로 데이타가 네트워크를 통해 어떻게 전송되는지를 정의
    • 논리주소(IP주소 등)이 아닌 물리주소(예. MAC주소(Media Access Control Address))을 참조해 장비간 전송
    • MAC주소란 컴퓨터의 하드웨워 주소
  • 기본적으로 에러검출/패킷의 프레임화 담당
  • 프레임(Frame)단위의 데이타 구성
    • 최종적으로 데이타 전송을 하기 전 패킷헤더에 MAC주소와 오류 검출을 위한 부분을 첨부

예시

MAC, LAN, 패킷망 등에 사용되는 것
예) Ethernet, PPP, Token Ring 등

profile
개발기록

0개의 댓글