웹과 네트워크 계층

2022. 3. 4. 11:27CS/네트워크

웹과 네트 워크 기본

Created: 2022년 3월 3일 오후 10:31

웹페이지는 어떻게 표시 되는가?

  • 웹브라우저 주소 입력란에 지정된 URL에 의지 해서 웹서버로 부터 리소스를 불러온다.
    • 서버에 요청하는 웹브라우저 등을 클라이언트(client)라고 부름
  • 클라이언트에서 서버까지 일련의 흐름을 결정하고 있는것은 웹 HTTP (Hyper Text Transfer Protocol) 프로토콜임
  • 프로토콜 이란 “약속” 이다. 즉 웹은 HTTP라는 약속을 사용한 통신으로 이루어져 있습니다.

TCP/IP

  • 컴퓨터와 네트워크 기기가 상호간에 통신하기 위해서는 서로같은 방법으로 통신하지 않으면 안됨
  • 서로다른 하드웨어와 운영체제등을 가지고 서로 통신하기 위해서는 모든요소에 규칙이 필요하게 됨.
    • ex) 케이블 규격, ip주소 지정방법, 상대를 찾기위한 순서와 방법, 웹을 표시하기 위한 순서 등
  • 인터넷과 관련된 프로토콜을 모은것을 TCP/IP라고 함.

계층으로 관리 하는 TCP/IP

  • TCP/IP는 4개의 계층이다.
    1. 애플리케이션 계층
      1. 유저에게 제공되는 애플리케이션에서 사용하는 통신의 움직임을 결정하고 있음
      2. TCP/IP에는 여러가지의 공통 애플리케이션이 준비되어 있음
      3. ex)HTTP, FTP, DNS 등
    2. 트랜스포트 계층
      1. 애플리케이션 계층에 네트워크로 접속되어 있는 2대의 컴퓨터 사이의 데이터 흐름을 제공함
      2. 트랜스포트 계층에서는 서로다른 성질을 가진 TCP와 UDP 두가지 프로토콜이 있음
    3. 네트워크 계층
      1. 네트워크 상에서 패킷의 이동을 다룸
      2. 패킷 : 전송하는 데이터의 최소 단위
      3. 어떠한 경로를 거쳐 상대의 컴퓨터까지 패킷을 보낼지 결정하기도 함
    4. 링크 계층
      1. 운영체제가 하드웨어를 제어하기 때문에 디바이스 드라이버와 네트워크 인터페이스 카드를 포함함
      2. 케이블등과 같이 물리적으로 보이는 부분 포함
      3. 하드웨어적 측면은 모두 링크 계층의 역할
  • TCP/IP가 계층화가 된 것은 장점이 있기 때문
    • 사양이 변경되면 변경된 해당 계층만 바꾸면된다.
    • 계층화화면 설계를 편하게 할 수 있음.

TCP/IP 통신의 흐름

계층구조

  • 계층을 순서대로 거쳐 상대와통신을 함.
  • HTTP의 통신 흐름
    1. HTTP 리퀘스트 시작
    2. 트랜스포트 계층 (TCP)에서 에플리케이션 계층에서 받은 데이터 (HTTP)를 통신하기 위해 쉽게 조각내어 안내번호와 포트번호를 붙여 네트워크 계층에 전달함
      1. TCP 프로토콜
        • 계층으로 말하자면 트랜스포트 층에 해당함
        • 신뢰성 있는 바이트 스트림 서비스를 제공함신뢰성 있는 서비스 : 상대방에게 보내는 서비스를 의미함
        • 바이트 스트림 : 용량이 큰 데이터를 보내기 쉽게 TCP 세그먼트라고 불리는 단위패킷으로 작게 분해하여 관리하는 것
        • TCP는 대용량의 데이터를 보내기 쉽게 작게 분해하여 상대에게 보내고, 정확히 도착했는지 확인하는 역할을 담당하고 있음
        • 상대에게 확실하게 데이터를 보내기 위해서 TCP는 “쓰리웨이 핸드셰이킹” 을 사용
    3. 네트워크 계층 (IP) 에서는 수신자 MAC 주소를 추가해서 링크 계층에 전달함 → 이로써 네트워크를 통해 송신할 준비가 되었슴
      1. IP 프로토콜
        • 계층으로 말하자면 네트워크 계층에 해당함
        • IP의 역할은 개개의 패킷을 상대방에게 전달하는 것, 상대방에게 전달하기 까지 여러가지 요소가 필요함
          • IP주소 : 각 노드에 부여된 주소
            • 변경이 가능
          • MAC주소 : 각 네트워크 카드에 할당된 고유의 주소
            • 변경이 불가
        • IP 통신은 MAC주소에 의존해서 통신을 한다
        • ARP라는 프로토콜을 사용한다.
          • 수신자의 IP주소를 바탕으로 MAC주소를 조사할 수 있음
    4. 수신측 서버는 링크 계층에서 데이터를 받아들여 순서대로 위의 계층에 전달하여 애플리케이션 계층까지 도달함.
  • 각 계층을 거칠 때, 반드시 헤더로 불려지는 해당 계층마다 해당 계층에 필요한 정보를 추가함
  • 수신측에서는 각 계층을 거칠 때마다 반디스 해당 계층마다 사용한 헤더를 삭제함.
  • → 이렇게 정보를 감싸는것을 캡슐화라고 함.

DNS

  • DNS는 HTTP와 같이 응용 계층 시스템에서 도메인이름과 IP 주소 이름 확인을 제공함
  • 컴퓨토는 IP주소와는 별도로 호스트 이름과 도메인 이름을 붙일 수 있음.
  • IP주소 대신 이름을 이용하여 상대의 컴퓨터를 지정함. → 이는 숫자를 사용하는 IP주소보다 사람에게 친숙한 방법