본문 바로가기

Computer Science/네트워크

(6)
[네트워크] OSI 7계층과 TCP/IP 4계층 [OSI 7 계층이란?] OSI 모델(Open Systems Interconnection Reference Model)은 네트워크를 이루고 있는 구성 요소들을 7단계의 계층적 방법으로 나누고, 각 계층의 표준을 정한 네트워크 모델이다. 일반적으로 OSI 7 계층이라고 한다. 그럼 이렇게 계층을 나눈 이유가 무엇일까? 이는 통신이 일어나는 과정을 단계적으로 파악할 수 있기 때문이다. 흐름을 한 눈에 알아보기 쉽고, 때문에 7 단계 중 특정한 곳에 이상이 생기면 해당하는 계층의 장비나 소프트웨어만 고치면 되기 때문이다. 7계층 - 응용 계층 (Application) 사용자에게 보이는 부분이다. OSI 모형에서는 "최종 사용자에게 가장 가까운 계층"이다. 구글 크롬, 사파리와 같은 웹 브라우저부터 여러 응용 ..
[네트워크] TCP & UDP TCP와 UDP는 모두 OSI 7계층 중에서 전송(Transport) 계층에서 사용하는 프로토콜이다. 전송 계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하는 계층으로, 쉽게 말해 데이터의 전달을 담당한다. 즉, TCP와 UDP는 데이터를 보내기 위해 사용하는 프로토콜이다. UDP (User Datagram Protocol) UDP를 문자 그대로 해석하면 데이터를 데이터그램 단위로 처리하는 프로토콜이라고 할 수 있다. 여기서 데이터그램이란, 독립적인 관계를 지니는 패킷이라는 뜻이다. UDP는 TCP와 달리 비연결형 프로토콜이다. 즉, 연결을 위해 할당되는 논리적인 경로가 없는데, 그렇기 때문에 각각의 패킷은 다른 경로로 전송되고, 각각의 패킷은 독립적인 관계를 지니게 되는데 이렇게 데이터를 서로 다..
[Web] 쿠키(Cookie)와 세션(Session) [HTTP의 특징과 쿠키와 세션을 사용하는 이유] 서버와 클라이언트가 통신할 때마다 서버는 클라이언트가 누구인지 인증을 계속 해야 한다. 그 이유는 HTTP 프로토콜의 Connectionless, Stateless한 특성 때문이다. Connectionless 클라이언트가 요청을 한 후 응답을 받으면 그 연결을 끊어버리는 특징이다. HTTP 1.1 버전에서는 커넥션을 계속 유지하고 요청(request)에 재활용하는 기능이 추가되었다. -> HTTP Header에 keep-alive 옵션을 주어 커넥션을 재활용한다. HTTP 1.1 버전에서는 디폴트 옵션이다. HTTP가 TCP 위에서 구현되었기 때문에 (TCP는 연결 지향, UDP는 비연결 지향) 연결 지향적이라고 생각할 수 있겠지만, 아직까지 네트워크 관..
[Web] URI & URL & URN URI & URL & URN URI와 URL. 상당히 헷갈리는 단어다. 나도 이때까진 같은 의미로 사용해왔었다. 보통 어디 웹페이지의 주소라 함은 URL이라고 많이 칭했었는데, 요번에 URI 와 URL (+ URN)에 대해서 정리해봐야겠다. [URI] 먼저 통합 자원 식별자(Uniform Resource Identifier, URI) 란 인터넷에 있는 자원을 나타내는 유일한 주소이다. URI의 존재는 인터넷에서 요구되는 기본조건으로서, 인터넷 프로토콜에 항상 붙어 다닌다. URI는 다음과 같은 형태를 나타낸다. scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment] 이러한 URI의 하위 개념으로 URL과 URN이 있다. [URL] 통합 자원..
[Web] 주소창에 naver.com을 검색하면 일어나는 일 (DNS) DNS (https://naver.com/ 에 들어가기까지의 과정) [DNS (Domain Name System)] DNS는 특정 컴퓨터 또는 네트워크로 연결된 임의의 장치의 주소를 찾기 위해, 사람이 이해하기 쉬운 도메인 이름을 숫자로 된 IP 주소로 변환해주는 시스템이다. 그럼 웹 브라우저의 주소창에 https://naver.com/을 검색했을 때 일어나는 일을 알아보자. [DNS 동작 방식] 1. 웹 브라우저에서 URL을 입력하고 Enter를 클릭한다. 2. 웹 브라우저가 입력한 URL을 분석하며 일을 하기 시작한다. URL의 구조 Scheme: //:@:/?# 여기서 Scheme은 프로토콜로, http, ftp, sftp, pop3, IMAP 등을 말한다. e.g) https://yoon1fe.t..
[Web] HTTP vs. HTTPS HTTP와 HTTPS의 차이 HTTP는 HyperText Transfer Protocol로, 클라이언트와 서버 사이에 이루어지는 요청/응답 프로토콜이다. 예를 들어, 클라이언트인 웹 브라우저가 HTTP를 통해서 서버로부터 웹페이지(HTML)나 그림 정보를 요청하면, 서버는 이 요청에 응답하여 필요한 정보를 해당 사용자에게 전달하게 된다. TCP/IP 모델에서 응용 계층에 해당하는 프로토콜이다. 웹 서핑을 할 때 서버에서 웹 브라우저로 데이터를 전송해주는 용도로 가장 많이 사용된다. HTTPS는 HTTP + over Secure Socket Layer의 약자이다. 기존의 HTTP 프로토콜의 문제점은 서버에서 브라우저로 전송되는 정보가 암호화되지 않는다는 점이다. 즉, 데이터가 쉽게 도난당할 수 있다는 것이..