(Network) TCP/IP

2 분 소요

💼📝🔑⏰ 📙📓📘📒🎓

💼 TCP/IP 개념과 기본 구조

Transmission Control Protocol / Internet Protocol

📝 TCP/IP주요 특징

  • 연결형 서비스 및 비연결형 서비스 제공
  • 패킷 교환
  • 동적 경로 할당
  • 공통의 응용 프로그램 제공

📝 TCP/IP계층의 역할

데이터링크 계층

  • 네트워크 인터페이스
  • devicedriver와 interfacecard로 데이터 통신 처리
  • 대표적 프로토콜
    • ARP: IP주소 → 물리 주소
    • RARP: 물리 주소 → IP주소

인터넷 계층

  • 네트워크 상에서 패킷의 이동을 처리 (패킷 라우팅 등)
  • 대표적 프로토콜
    • IP(InternetProtocol)
    • ICMP(InternetControlMessageProtocol)
      • 전송 오류 제어
      • IP데이터그램 전송의 오류가 발생할 경우 오류 메시지 또는 제어 메시지를 제공해주는 프로토콜
    • IGMP(InternetGroupManagementProtocol)
      • 인터넷에서 multicast 서비스를 위해 사용되는 프로토콜
      • IP호스트가 어떤 멀티캐스트 그룹에 참가하고 있는지를 멀티캐스트 라우터에 통보하는 프로토콜

전송 계층

  • 호스트 컴퓨터 사이의 데이터 전송 서비스
  • 대표적 프로토콜
    • TCP(TransmissionControlProtocol)
    • UDP(UserDatagramProtocol)

응용 계층

  • 응용 프로세스를 위한 프로토콜
  • 대표적 프로토콜
    • TCP이용
      • FTP,SMTP(SimpleMailTransferProtocol),Telnet등
    • UDP이용
      • TFTP(TrivialFTP),DNS(DomainNameSystem),
      • BOOTP(BootstrapProtocol)등
    • IP직접 이용 :traceroute프로그램
    • ICMP직접 이용 :ping프로그램

📝 인터넷 주소

  • IP주소 : 서로 다른 네트워크 간에 호스트를 식별하는 논리주소
  • 포트주소 : 프로세스를 식별하는 포트 번호
    • FTP서버 (TCP21번),TFTP서버 (UDP69번),Telnet서버 (TCP23번),SMTP서버 (TCP25번)
  • 소켓주소 : IP 주소 + 포트주소

💼 IP

인터넷 프로토콜 : OSI모델의 네트워크 계층의 기능

  • 비연결형(Connectionless)서비스
    • IP역할 :호스트의 주소 지정 및 데이터그램 전송
    • 경유해야 하는 데이터 링크 및 라우터 정보를 무시
    • 신뢰성이 없는 데이터 전송

IP 단편화: 데이터그램이 송신자로부터 수신자까지의 중간 네트워크를 경유할 때마다 각 중간 네트워크의 MTU에 적합한 세그먼트로 분할되는 것을 말한다.

💼 UDP/TCP

전송 계층 프로토콜

📝 UDP정의

  • 비연결성과 비신뢰성
  • 기본적인 IP데이터 전달 서비스프로세스 간 통신이 추가된 형태
  • 간단한 메시지를 송수신하는 데 유리

📝 UDP의 특징

  • UDP = 비연결형 IP전달 서비스 +검사합(checksum)기능
  • 최종 목적지의 데이터 수신 여부를 확인하지 않음
    • 데이터 손실 가능성
  • 메시지의 도착순서를 재조정하지 않음
    • 데이터의 순서가 틀릴 가능성
  • 호스트 사이에 데이터 흐름 제어 없음
    • 수신자 처리 용량을 초과하는 데이터 발생 가능성

📝 TCP정의

  • 연결지향(connection-oriented)전송 서비스
    • 연결 설정 -> 데이터 전송 -> 연결 해제
  • 신뢰성 있다 => 흐름제어(slidingwindow 사용), 오류제어

📝 TCP특징

  • Segment단위의 전송 (MSS: Maximum Segment Size)
  • TCP 사용자가 데이터를 전송하기 전에 발신지와 목적지 간에 가상경로를 설정하고 TCP의 모든 세그먼트들을 가상경로를 통하여 전송한다.
  • 데이터 전송이 끝나면 이를 해제하며 전체 메시지를 하나의 단일 가상경로를 이용하여 전송함으로써
  • 손상 또는 손실된 세그먼트의 재전송뿐만 아니라 확인 응답의 처리도 가능하다.
  • TCP 연결 설정: 3-way handshaking

💼 주소변환

📝 ARP

  • 상대방 호스트의 IP주소를 알고 데이터 통신을 위해 그 호스트의 물리주소를 알고자 할 때 사용하는 프로토콜
  • IP주소를 물리주소로 매핑해 주는 프로토콜

📝 RARP

  • 물리주소만 알고 있는 호스트가 자신의 IP주소를 찾을 때 사용되는 프로토콜

💼 주소관리

  • BOOTP: 동적으로 IP주소를 할당
  • DHCP: BOOTP에서 발전된 동적 주소 할당 프로토콜로서 IP주소 재사용이 가능함
    • IP주소 pool에서 사용 가능한 IP주소를 선택하여 원하는 호스트에게 일정기간 임대해줌

댓글남기기