네트워크 2022. 7. 27.
WebSocket이란? 개념과 동작 과정 (+socket.io, Polling, Streaming...)
📢 들어가며 직장에서 자동 업데이트 기능을 구현할 일이 생겼다. 누군가 웹의 데이터를 수정했을 때 다른 PC를 사용 중인 사람의 화면에도 해당 데이터가 자동으로 실시간 업데이트 되게하는 기능이었다. 나는 이 기능을 구현하기 위해 5초마다 한번 씩 데이터의 수정된 시간를 DB에서 가져왔고, DB에서 가져온 수정된 시간이 기존 수정된 시간과 다르다면 화면이 refresh 되도록 구현했다. (구현할 땐 몰랐는데, 이렇게 일정 주기로 통신하여 가져오는 방법을 Polling 이라고 한단다.) 그런데 대리님께서 이렇게 하는 것도 틀린 건 아니지만 웹 소켓을 사용하는 방법이 있다고 말씀해주셨다. 나는 웹 소켓에 대해 전혀 알지 못했다... 그래서 부랴부랴 공부하고 Polling 방식으로 구현된 코드를 웹 소켓 방식으..
네트워크 2022. 7. 25.
HTTP/HTTPS란? TCP, UDP, HandShake 개념 정리
🧣 HTTP란? HyperText Transfer Protocol 클라이언트와 서버 간 데이터를 주고 받기 위한 규칙(프로토콜)이다. 여기서 데이터는 텍스트, 이미지, 동영상 등 모든 종류를 말한다. HTTP 종류에는 TCP 와 UDP 방식이 있으며 80 포트를 사용한다. TCP Transmission Control Protocol. 1:1 연결을 지향하며 신뢰할 수 있는 통신을 제공한다. 여기서 1:1은 각각 클라이언트와 서버를 의미한다. 양 단에 연결을 수립한 뒤 데이터를 전송하고 연결을 종료한다. 일반적인 HTTP 통신은 TCP 방식을 따르고 있다. UDP User Datagram Protocol. 1:1 혹은 1:N 비연결을 지향하며 신뢰할 수 없는 통신을 제공한다. 여기서 '비연결' 이라는 말은..
네트워크 2022. 3. 7.
OSI 7계층 - 물리 계층이란? (물리계층에서 이뤄지는 일)
📢 들어가기 전에 이번 포스팅은 지난 포스팅에서 이어진다. 이번포스팅에선 OSI 7계층 중 하나인 물리계층의 개념과 그 물리 계층에서 어떤 일이 이뤄지는 지 알아본다. 🚗 물리 계층이란? OSI 7계층 중 첫번째에 해당되는 계층. 🚗 물리 계층에서 이뤄지는 일 컴퓨터는 0과 1만으로 데이터를 다룬다. 지구 어딘가에 떨어진 다른 컴퓨터에 데이터가 도달하게 하기 위해선 0과 1로 이루어진 데이터를 전기 신호로 변환해야한다. 변환된 전기 신호가 물리적 경로로 목적지 컴퓨터에 도달하고 나면, 다시 0과 1로 이루어진 데이터로 변환된다. 이 행위들이 바로 물리계층에서 이루어진다. 0과 1로 이루어진 데이터를 전기 신호로 변환하는 일은, 랜 카드 에서 이뤄진다. 랜 카드는 보통 컴퓨터 메인보드에 포함되어 있다. 💡..
네트워크 2022. 3. 4.
프로토콜이란? OSI 7계층, TCP/IP 4계층이란?
📢 들어가며 이번 포스팅에선 프로토콜과 OSI 7계층, TCP/IP 4계층에 대해 알아본다. 🪢 프로토콜 통신 규약. 풀어 설명하면, 컴퓨터간 통신을 위한 규칙 이다. 한국인과 프랑스인은 서로 사용하는 언어가 달라 대화가 통하지 않는다. 하지만 서로 국제공용어인 "영어"를 쓰면 대화가 통할 수 있다. 이렇게 영어를 사용하자는 규칙을 정하면 대화할 수 있듯이, 서로 다른 컴퓨터 기기가 통신하기 위해 정한 규칙이 바로 프로토콜이다. 프로토콜은 상호간의 접속이나 전달방식, 통신방식, 주고받을 자료의 형식, 오류 검출 방식, 코드 변환방식, 전송속도 등을 규정하고 있다. 🪢 OSI 7계층 ISO(국제표준기구)에서 만든 네트워크를 7계층으로 만든 모델. 풀어 설명하면, 컴퓨터 간 데이터를 통신하기 위한 과정을 7..