📍네트워크란?
📌 네트워크는 여러대의 컴퓨터 또는 장비가 서로 연결되어서 정보를 주고 받을 수 있게 도와주는 기술입니다.
- 컴퓨터, 라우터, 스위치, 허브 등의 장비들이 각각의 역할을 수행하여 정보를 주고 받습니다.
- 서로 정보를 주고 받기 위해서는 IP 주소, 서브넷 마스크, 게이트웨이등의 정보를 설정하고 네트워크 프로토콜을 이용하여 통신을 하게 됩니다.
- 우리는 왜 네트워크를 알아야 할까?
- 우리는 사용자가 요청을 했을 때 해당 요청에 대한 응답을 수행하는 프로그램 즉, 서버를 개발하게 될 겁니다.
- 그렇다면 사용자의 요청에서 시작하여 우리가 만든 서버에 도착하고 다시 사용자에게 까지 되돌아가는 흐름을 잘 파악하고 있다면 서버 개발에 큰 도움이 될 것입니다.
📍Client와 Server
- Client 즉, 브라우저에서 서버에 정보를 요청하는 과정을 간략하게 표현한 부분입니다.
- 보시는 것 처럼 사용자는 브라우저를 이용하여 서버에 정보를 요청하고 응답을 받습니다.
- 이때 사용자의 요청이 서버에 도달하기 위해서는 해당 서버의 정보가 필요합니다.
- 이 때 사용자의 요청이 해당 서버에 정확하게 도달할 수 있게 제공되는 정보가 IP 주소입니다.
- 거대한 네트워크망에서 컴퓨터를 식별하기 위한 위치 주소 입니다.
- 네트워크상에서의 데이터 송/수신은 이 주소를 기준으로 이루어지고 있습니다.
📍웹 서버란?
- 웹 서버는 인터넷을 통해 HTTP를 이용하여 웹상의 클라이언트의 요청을 응답해주는 통신을 하는 일종의 컴퓨터입니다.
- 브라우저를 통해 HTTP Request로 웹사이트를 웹서버에 요청합니다.
- 이후 웹서버는 요청을 승인하고 HTTP Response를 통해 웹사이트 데이터를 브라우저에 전송합니다.
- 마지막으로 브라우저는 서버에서 받아온 데이터를 이용해 웹사이트를 브라우저에 그려내는 일을 합니다.
- 기본적으로 브라우저가 웹서버에 요청을 할때는 항상 GET method로 요청하게 됩니다.