🤔 웹 통신의 큰 흐름? 우리가 Chrome을 실행시켜 주소창에 특정 URL 값을 입력시키면 어떤 일이 일어나는가? 📌 in 브라우저 url에 입력된 값을 브라우저 내부에서 결정된 규칙에 따라 그 의미를 조사한다. 조사된 의미에 따라 HTTP Request 메시지를 만든다. 만들어진 메시지를 웹 서버로 전송한다. 이 때 만들어진 메시지 전송은 브라우저가 직접하는 것이 아닙니다. 브라우저는 메시지를 송출하는 기능이 없으므로 OS에 의뢰하여 메시지를 전달하게 됩니다. 단, OS에 송신을 의뢰할 때는 도메인명이 아니라 ip주소로 메시지를 받을 상대를 지정해야 하는데, 이 과정에서 DNS서버를 조회해야 합니다. 🔎 그 전에, TCP/IP 를 이해해보자. 인터넷이나 사내 LAN은 TCP/IP의 개념에 기초하여 만..
🤔 TCP (Transmission Control Protocol) TCP는 신뢰성 있는 데이터 전송을 지원하는 연결 지향형 프로토콜입니다. 일반적으로 TCP와 IP가 함께 사용되는데, IP가 데이터의 전송을 처리한다면 TCP는 패킷 추적 및 관리를 하게 됩니다. 연결 지향형인 TCP는 3-way handshaking이라는 과정을 통해 연결 후 통신을 시작하는데, 흐름 제어와 혼잡 제어를 지원하며 데이터의 순서를 보장합니다. 흐름 제어 : 보내는 측과 받는 측의 데이터 처리 속도 차이를 조절해주는 것 혼잡 제어 : 네트워크 내의 패킷 수가 넘치게 증가하지 않도록 방지하는 것 📌 TCP 특징 신뢰성 있는 데이터 전송 데이터의 순차적인 전달 UDP로는 만족할 수 없어서 탄생한 프로토콜 UDP에 비해 전송 속..
🤔 OSI 7 계층이란? (Open System Interconnection) 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여, 각 계층 간 상호 작동하는 방식을 정해 놓은 것 개방된 시스템, 시스템 간의 상호 연결성을 부여하는 표준 🔎 OSI 7 계층을 나눈 이유 OSI 7 계층으로 통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 문제가 발생하면 그 단계만 수정할 수 있기 때문입니다. 📌 Layer 1 : 물리 계층 (Physical Layer) 통신 케이블, 허브, 리피터, 어댑터 전송 단위 : 비트(Bit) 데이터를 전기적인 신호로 변환해서 주고 받는 기능을 진행하는 공간 전기, 기계적인 신호를 주고받는 역할을 하는 계층 디지털에서 아날로그 혹은 그 반대로 신호를 변환 OSI..
🤔 HTTP (Hypertext Transfer Protocol) HTML 문서와 같은 리소스들을 가져올 수 있게 해주는 프로토콜. 인터넷 상에서 데이터를 주고 받기 위한 서버/클라이언트 모델을 따르는 프로토콜입니다. 사용자가 URL을 브라우저 주소창에 작성하고 엔터를 누르면 원하는 웹페이지가 나오게 됩니다. 사용자는 웹페이지를 보기 위해 단순한 일을 한 것이지만, 특정 웹페이지를 사용자 웹브라우저에 보여주기 위해서는 내부적인 처리들이 있습니다. 이 내부적인 처리에서, 클라이언트가 서버에게 웹페이지를 보여달라고 말하는 것을 요청(Request), 서버가 클라이언트에게 요청받은 것에 대한 대답으로 웹페이지 내용을 표현하기 위해 HTML문서로 주는 것을 응답(Respose)라고 부릅니다. 📌 HTTP의 특징..