[Network] TCP/IP

foresec·2023년 6월 22일
0

Computer Science

목록 보기
7/28

TCP/IP

TCP/IP는 인터넷에서 가장 널리 사용되는 네트워크 프로토콜

TCP(전송제어 프로토콜)

TCP는 데이터 손실 없이 정확한 전송을 보장하며 데이터를 작은 패킷으로 나누어 전송, 수신측에서는 패킷을 재조립하여 원본데이터를 복원함.

TCP는 흐름제어와 혼잡제어 기능을 포함하고 있어 데이터 전송속도와 네트워크 혼잡을 조절 할 수 있음

reliable network를 보장할 수 있도록 하며(연결지향적),
신뢰성 있는 연결 설정 및 유지

  • 이 때 reliable network를 보장할때 4가지 문제점 존제
  1. 손실 : packet 손실 될 수 있는 문제
  2. 순서 바뀜 : packet의 순서가 바뀌는 문제
  3. Congestion : 네트워크가 혼잡한 문제
  4. Overload : receiver가 overload되는 문제

전송의 전체과정

  1. Application layer : sender application layer가 socket에 data를 씀.
  2. Transport layer : data를 segment에 감싼다. 그리고 network layer에 넘겨줌.
  3. 그러면 아랫단에서 어쨋든 receiving node로 전송이 됨. 이 때, sender의 send buffer에 data를 저장하고, receiver는 receive buffer에 data를 저장함.
  4. application에서 준비가 되면 이 buffer에 있는 것을 읽기 시작함.
    따라서 flow control의 핵심은 이 receiver buffer가 넘치지 않게 하는 것임.
    따라서 receiver는 RWND(Receive WiNDow) : receive buffer의 남은 공간을 홍보함

흐름제어 & 혼잡제어
https://velog.io/@foresec/Network-TCPIP-흐름제어-혼잡제어


IP(인터넷 프로토콜)

IP는 인터넷 상에서 데이터그램을 전달하고 패킷을 라우팅하는 기능
IP주소를 사용하여 패킷을 라우팅하고 목적지까지 전달
비연결성이며 패킷이 독립적으로 전송되기 때문에 도착순서 보장이 안됨

IP는 각 기기에 고유한 IP주소를 할당하여 통신을 식별, 데이터 패킷을 해당 목적지로 전송
IPv4(32비트) 또는 IPv6의(128비트) 형식으로 표현


TCP/IP

IP는 패킷의 전달과 라우팅을 담당하고, TCP는 안정적인 연결과 데이터 전송을 관리
IP기반에 TCP가 사용되어서 불리는 명칭
TCP가 데이터 추적, IP가 배달을 처리

TCP/IP 계층

1. 네트워크 인터페이스 계층

OSI의 물리계층과 데이터링크 계층에 해당
즉, 네트워크 드라이버와 같은 물리적 TCP/IP 패킷의 전달 및 수신 과정에 대해 담당하는 계층

2. 인터넷 계층

OSI의 네트워크 계층에 해당
패킷을 목적지까지 효율적으로 전달하는 것만 고려하는 계층
IP주소를 판독, 목적지의 네트워크를 찾아가서 해당 목적지가 잘 받을수 있도록 전송하는 역할 담당

3. 전송 계층

OSI의 전송 계층에 해당
전달되는 패킷의 오류 검사 및 재전송 요구 등 전반적인 제어를 담당하는 계층

4. 응용 계층

OSI의 세션 계층, 표현 계층, 응용 계층들이 한꺼번에 해당
사용자의 응용 프로그램 레벨에서 데이터를 처리하는 계층

OSI 7계층과의 비교

TCP/IP 계층을 더 많이 사용함

profile
왼쪽 태그보다 시리즈 위주로 구분

0개의 댓글