Computer Science/Studying

웹 - 네트워크 - 인터넷 - 서버 - 프로토콜

JJoajjoa 2023. 8. 30. 08:48

 

World Wide Web 월드 와이드 웹

인터넷에서 운영되는 서비스 중 하나 (웹 자체가 인터넷은 아님)

개발 목적 : 연구자들이 흩어져있는 정보를 쉽게 정리하고 공유하기 위함

웹의 시작 :

HTML(HyperText Markup Launguage)을 통해 정보의 연결이 가능하도록 하이퍼텍스트를 포함한 콘텐츠를 제공하며,

HTTP(HyperText Transfer Protocol)라는 프로토콜을 통해 TCP/IP 네트워크 상에서 서비스를 운영하게 된 것

 

결론 : 인터넷 상의 정보를 하이퍼텍스트 방식과 멀티미디어 환경에서 검색할 수 있게 해주는 정보 검색 시스템

 

 

웹의 동작 구조

HTML로 만들어진 콘텐츠는 웹 거버 라고 하는 별도의 서버 소프트웨어를 통해 서비스로 제공됨

웹 서비스를 요청한 클라이언트에서의 서비스는 웹 브라우저를 통해 이용함

 

 


 

 

네트워크

컴퓨터와 컴퓨터를 연결해주는 망

네트워크를 구축하려면 컴퓨터 간의 연결 규격, 즉 프로토콜이 필요함

여러 프로토콜 중 가장 널리 쓰이며 인터넷에서도 사용되고 있는 것 : TCP/IP 

 

 

TCP/IP

Transmission Control Protocol / Internet Protocol

OSI(Open Systems Interconnection) 7계층에서 유래한 것 → 단순화 하여 4계층으로 정의

응용 계층 WWW, FTP, Telnet, SMTP 와 같은 네트워크 프로그램으로 구성
전송 계층 각 시스템을 연결하고 TCP 프로토콜을 이용하여 데이터 전송
인터넷 계층 IP 프로토콜을 이용하여 데이터를 정의하고 경로를 배정
물리 계층 실제 네트워크에 접근할 수 있도록 하는 물리적인 부분

 

TCP  데이터 흐름 관리, 데이터 정확성 확인 등의 역할을 수행 

  IP    데이터(패킷)를 목적지까지 전송하는 역할 담당

 

특징 : 개방형 구조, 특정 운영체제나 하드웨어에 영향 받지 않음

 

 

인터넷

Inter + network

컴퓨터 네트워크 망, 네트워크 인프라

 

internet  내부 네트워크

Internet  전세계가 하나로 연결된 네트워크

 

 


 

 

웹 어플리케이션 개념

클라이언트 - 서버 모델

웹 서비스를 제공하기 위해서는 서버 컴퓨터와 서버에서 동작하는 여러 프로그램이 필요함

이때 서버에서 동작하는 프로그램 영역을 백엔드라고 함

클라이언트 사용자가 직접 사용하는 컴퓨터나 장치, 웹 서비스를 이용하는 사용자

서버 네트워크를 통해 클라이언트에게 서비스를 제공하는 컴퓨터 시스템

클라이언트는 서버에 요청(request)을 보내고, 서버는 그 요청에 대한 응답(response)을 반환함

 

HTTP 프로토콜

웹 어플리케이션에서 데이터를 주고받기 위한 통신규약

요청과 응답을 메세지 형태의 데이터로 전송함

요청과 응답에 대한 상호작용이 HTTP 프로토콜을 통해 이루어짐

 

요청/응답 메커니즘

요청 메세지에는 요청방식(GET, POST 등), 경로(URL), 헤더(Header), 본문(Body) 등의 정보가 포함됨

응답 메세지에는 상태코드(200 OK, 404 Not Found 등), 헤더, 본문 등의 정보가 포함됨

 

 

백엔드 중심 개발

 

프론트엔드 중심 개발


 

 

프로토콜 Protocol

컴퓨터나 네트워크 장치들이 서로 통신할 때 사용하는 규칙

컴퓨터 네트워크에서의 프로토콜은 데이터가 어떻게 전송되고, 받는 쪽이 이를 어떻게 해석해야 하는지에 대한 규칙 정의

 

▶ 프로토콜의 몇 가지 예시 : 

1. HTTP (HyperText Transfer Protocol):

  • 웹 브라우저와 웹 서버가 웹 페이지를 주고받을 때 사용하는 프로토콜
  • 예시 : 브라우저가 "www.example.com"에 접속할 때 HTTP를 사용하여 서버에 페이지를 요청하고, 서버는 HTTP를 통해 페이지를 브라우저에 전송

2. FTP (File Transfer Protocol):

  • 파일을 주고받을 때 사용하는 프로토콜
  • 예를 들어, 서버에 파일을 업로드하거나 다운로드할 때 FTP를 사용

3. TCP/IP (Transmission Control Protocol/Internet Protocol):

  • 인터넷에서 데이터 패킷을 전송할 때 사용하는 기본 프로토콜
  • TCP는 데이터의 전송을 제어하고, IP는 데이터를 목적지까지 어떻게 보낼지 결정

 

 

 

IP

퍼블릭 IP 주소 (Public IP Address)

  1. 범위와 가시성:
    • 퍼블릭 IP 주소는 전 세계 인터넷에서 고유함
    • 모든 인터넷 사용자는 퍼블릭 IP 주소를 통해 해당 장치에 접근할 수 있음
  2. 할당:
    • 인터넷 서비스 제공자(ISP)에 의해 할당됨
    • 예: 203.0.113.1
  3. 사용 예:
    • 웹 서버, 이메일 서버 등 인터넷에서 직접 접근할 수 있는 서비스에 사용됨
  4. 비용:
    • 일반적으로 유료이며, ISP로부터 구매해야 함

 

로컬(프라이빗) IP 주소 (Local/Private IP Address)2

  1. 범위와 가시성:
    • 로컬 IP 주소는 사설 네트워크 내에서 고유함
    • 인터넷에서는 직접 접근할 수 없고, NAT(Network Address Translation) 장치를 통해서만 외부와 통신할 수 있음
    • 예: 192.168.0.1, 10.0.0.1, 172.16.0.1 (프라이빗 IP 주소 대역)
  2. 할당:
    • 로컬 네트워크 관리자(일반적으로 라우터)에 의해 할당됨
  3. 사용 예:
    • 가정이나 사무실 네트워크에서 각 장치에 할당되어 인터넷에 연결된 각 장치 간의 통신을 가능하게 함
  4. 비용:
    • 무료이며, 누구나 자신의 네트워크에서 사용할 수 있음