TCP/IP 모델

Moom2n·2024년 4월 4일
0

CS

목록 보기
6/11

  • Internet protocol suite
    인터넷에서 컴퓨터들이 서로 정보를 주고 받는 데 쓰이는 프로토콜의 집합

- 애플리케이션 계층

  • 웹 서비스, 이메일 등 서비스를 실질적으로 사람들에게 제공하는 층

  • FTP : 장치 간의 파일을 전송하는데 사용되는 표준 통신 프로토콜

  • SSH : 보안되지 않은 네트워크에서 네트워크 서비스를 안전하게 운영하기 위한 암호화 네트워크 프로토콜

  • HTTP : World Wide Web 을 위한 데이터 통신의 기초이자 웹 사이트를 이용하는데 쓰는 프로토콜

  • SMTP : 전자 메일 전송을 위한 인터넷 표준 통신 프로토콜

  • DNS : 도메인 이름과 IP 주소를 매핑해주는 서버

- transport 계층

  • 송신자와 수신자를 연결하는 통신 서비스 제공, 연결 지향 데이터 스트림 지원, 신뢰성, 흐름제어가능

TCP

패킷 사이의 순서 보장, 연결지향 프로토콜 사용, 신뢰성 구축, 가상회선 패킷 교환 방식 사용

  • 가상회선 패킷 교환 방식 : 각 패킷에 가상회선 식별자 포함, 모든 패킷 전송 시 가상회선 해제됨, 패킷들은 전송된 순서대로 도착함

TCP 연결 성립 과정

TCP 는 신뢰성을 확보할 때 3-way handshake 작업 진행

  1. SYN 단계 : 클라이언트는 서버에 ISN을 담아 SYN 을 보냄
  2. SYN + ACK 단계 : 서버는 클라이언트의 SYN 을 수신하고 서버의 ISN 을 보냄, 승인 번호로 클라이언트의 ISN + 1 을 보냄
  3. ACK 단계 : 클라이언트는 서버의 ISN + 1 값의 ACK 를 서버에 보냄

ISN ( Initial Sequence Numbers ) : 초기 네트워크 연결 시 할당된 32비트 고유 시퀀스 번호

TCP 연결 해제 과정

4-way handshake 작업

  1. 먼저 클라이언트가 연결을 닫으려고 할때 FIN으로 설정된 세그먼트 보냄, 클라이언트는 FIN_WAIT_1 상태로 변하고 서버의 응답을 대기
  2. 서버는 클라이언트로 ACK 라는 승인 세그먼트 보냄. CLOSE_WAIT 상태로 변환. 클라이언트가 세그먼트 받으면 FIN_WAIT_2 상태로 변환
  3. 서버는 ACK를 보내고 일정 시간 이후 클라이언트에 FIN 이라는 세그먼트 보냄
  4. 클라이언트는 TIME_WAIT 상태가 되고, 다시 서버로 ACK 전송, 서버는 CLOSED 상태가 됨. 이후 클라이언트는 일정 시간 대기 후 연결이 닫히고, 클라이언트와 서버간 모든 자원의 연결이 해제됨

TIME_WAIT 에서 연결을 일정 시간 뒤에 닫는 이유 :
1. 지연 패킷이 발생할 경우를 대비하기 위함
2. 두 장치가 연결이 닫혔는지 확인하기 위해서

UDP

순서 보장X, 수신 여부 확인 X, 단순이 데이터만 주는 ‘데이터그램 패킷 교환 방식’ 사용

  • 데이터그램 패킷 교환 방식 : 패킷이 독립적으로 이동, 최적의 경로 선택하여 감

- 인터넷 계층

  • IP, ARP, ICMP

  • 장치로부터 받은 네트워크 패킷을 IP 주소로 지정된 목적지로 전송하기 위해 사용되는 계층

  • 패킷을 수신해야 할 상대의 주소를 지정하여 데이터를 전달함. 비연결형(상대가 제대로 받았는지에 대해 보장하지 않음)

- 링크 계층

  • 이더넷

  • 전선, 광섬유, 무선 등으로 실질적으로 데이터를 전달하며 장치 간 신호를 주고받는 ‘규칙’을 정하는 계층

- 데이터 링크 계층

  • ‘이더넷 프레임’ 을 통해 에러확인, 흐름제어, 접근제어 담당

유선 LAN

을 이루는 이더넷은 IEEE802.3 이라는 프로토콜을 따르며 전이중화 통신 사용

  • 전이중화 통신 : 양쪽 장치가 동시에 송수신할 수 있는 방식

  • 반이중화 통신 : 양쪽 장치는 서로 통신할 수는 있으나, 동시에는 통신할 수 없으며 한번에 한 방향만 통신할 수 있는 방식

  • CSMA/CA : 반이중화 통신 중 하나로 장치에서 데이터를 보내기 전에 캐리어 감지 등으로 사전에 가능한 한 충돌을 방지하는 방식 사용

  • CSMA/CD : 데이터를 보낸 이후 충돌이 발생한다면 일정 시간 이후 재전송

무선 LAN : IEEE802.11 사용

  • BSS : 기본 서비스 집합
  • ESS : 하나 이상의 연결된 BSS

- 물리 계층

  • 무선 LAN과 유선 LAN 을 통해 0과 1로 이루어진 데이터를 보내는 계층

- 계층 간 데이터 송수신 과정

  • 캡슐화 과정
    상위 계층의 헤더와 데이터를 하위 계층의 데이터 부분에 포함시키고 해당 계층의 헤더를 삽입하는 과정

  • 세그먼트 -> 데이터그램 -> 패킷 -> 프레임

PDU (Protocol Data Unit)

  • 제어 관련 정보들이 포함된 ‘헤더’

  • 데이터를 의미하는 ‘페이로드’

  • Application Layer : 메시지

  • Transport Layer : 세그먼트 (TCP), 데이터그램(UDP)

  • Network Layer : 패킷

  • DataLink Layer : 프레임

  • Physical Layer : 비트


0개의 댓글