볼륨조절불가 2024. 2. 10. 14:38
728x90

 

 

* 해당 게시글은 <그림으로 배우는 Http&Network Basic>을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다.

 

 


 

 

프로토콜

  • 컴퓨터나 네트워크 기기가 서로 통신하기 위해 지켜야 하는 상호 규약(약속)
  • 케이블 규격, IP주소 지정 방법, 상대를 찾는 방법, 상대 도달 순서 등에 프로토콜이 적용됨

 

 


 

 

TCP/IP

좁은 의미: TCP 프로토콜 + IP 프로토콜
넓은 의미: IP 프로토콜을 사용하는 통신과 관련된 프로토콜들을 모은 것. HTTP 포함
  • TCP/IP 프로토콜이 4계층 구조로 구성된 이유
    • 인터넷의 내부 사양이 바뀌었을 때 사양이 바뀐 해당 계층만 바꾸면 되기 때문에 유지보수 측면에서 이득
    • 통신 기능이 있는 애플리케이션 개발시 통신 관련 세부 사항을 고려하지 않고 개발 가능

애플리케이션 계층

  • 유저에게 제공되는 애플리케이션에서 통신의 움직임을 결정
  • TCP/IP에서 제공하는 애플리케이션(프로토콜) 종류: FTP, DNS, HTTP 등

트랜스포트 계층

  • 애플리케이션 계층에 네트워크로 접속되어 있는 2대의 컴퓨터 사이의 데이터 흐름 제공
  • 프로토콜 종류: TCP, UDP

네트워크 계층

  • 네트워크 상에서 패킷(전송 데이터의 최소 단위)의 이동을 담당
  • 어떠한 경로로 상대 컴퓨터로 데이터를 보낼지 결정

링크 계층

  • 네트워크에 접속하는 하드웨어적인 면을 담당
  • 종류: 디바이스 드라이버, 네트워크 인터페이스 카드, 케이블 등

HTTP를 이용한 TCP/IP 통신의 흐름

송신 과정

계층을 통과할 때마다 헤더 추가(캡슐화)

  • 애플리케이션 계층: 웹 페이지를 보고싶다는 내용의 HTTP 리퀘스트(메시지) 지시 →TCP 헤더 추가
  • 트랜스포트 계층: HTTP 메시지를 통신하기 쉽게 조각내어 안내 번호와 포트 번호를 추가해 네트워크 계층으로 전달 → IP 헤더 추가
  • 네트워크 계층: 수신지의 MAC 주소를 추가해 링크 계층에 전달 → Ethernet 헤더 추가
  • 링크 계층을 통해 송신 수행

수신 과정

계층을 통과할 때마다 헤더 제거(역캡슐화)

  1. 링크 계층 → Ethernet 헤더 제거
  2. 네트워크 계층 → IP 헤더 제거
  3. 트랜스포트 계층 →TCP 헤더 제거
  4. 애플리케이션 계층

 

 


 

 

아래는 TCP/IP에서 중요한 역할을 맡고 있는 대표 프로토콜 세 가지이다.

IP 프로토콜

개개의 패킷을 상대방에게 전달하는 것이 사용 목적인 프로토콜
  • 작동에 필요한 요소: IP 주소(변경 가능), MAC 주소(변경 불가능)
  • 송신자와 수신자 사이에 연결된 여러 대의 컴퓨터와 네트워크 기기를 중계(연결)하여 상대방에게 도착

ARP 프로토콜

  • 중계 과정에서 다음으로 중계할 곳을 MAC 주소를 이용해 찾아가는 주소 해결 프로토콜. 수신자의 IP주소 이용
  • 중계 과정에서 송신자와 수신자 사이 각 기기는 최종 목적지를 모른 채 다음 중계 목적지로 패킷 전송(택배 배송 과정과 흡사)

 

 


 

 

TCP 프로토콜

신뢰성 있는 바이트 스트림 서비스 제공
  • 바이트 스트림 서비스: 용량이 큰 데이터를 TCP 세그먼트라고 불리는 작은 패킷으로 분해해 관리하는 서비스
  • 신뢰성 있는 서비스: 상대방에게 무언가를 보낸 뒤 확인 과정까지 거치는 서비스

쓰리 웨이 핸드셰이킹

3개의 과정을 거쳐 확실한 데이터 전송 보장
  1. 송신 측에서 SYN  플래그로 상대에게 접속해 패킷 전송
  2. 수신 측에서 SYN과 ACK 플래그로 송신측에 접속하면서 패킷 수신한 사실을 전달
  3. 송신 측이 ACK 플래그를 보내 패킷 교환 완료
  • 위 과정에서 통신이 끊기면 TCP는 위 과정을 1번부터 시행해 패킷 재전송

 

 

 


 

 

DNS 프로토콜

응용 계층 시스템에서 도메인 이름과 IP 주소 이름 확인을 제공하는 프로토콜
  • 웹 브라우저: 친숙함을 위해 IP 주소 대신 도메인 주소 사용 → 도메인 주소로부터 IP주소를 알아올 방법 필요

DNS를 통한 IP주소 해결 과정

  1. 웹 브라우저가 DNS 서버에 도메인 주소를 통한 요청
  2. DNS 서버가 도메인 주소에 대응하는 IP 주소로 응답
  3. 응답받은 IP주소를 바탕으로 웹페이지에 요청(HTTP 메시지 작성 후 요청)
 
728x90