1. 컴퓨터 세계에서 서버와 클라이언트는 무엇인가? > 우리가 웹 개발을 하다보면 클라이언트(Client)와 서버(Server)라는 말들을 종종 들을 수 있는데, 간단히 말하자면 클라이언트는 '서비스 요청자', 서버는 '서비스 제공자'라고 불리는데 위의 그림과 같이

오픈 시스템 상호 연결(OSI) 모델은 네트워크 통신 기능을 7개의 계층으로 나누는 개념적 프레임워크를 의미한다. 1계층부터 7계층까지 계층별로 모든 기술은 특정 기능을 제공하고 해당 기능을 수행해야 네트워킹에 유용하게 사용할 수 있다. 상위 계층의 기술은 기본 구현
OSI 7 계층의 가장 아래에 위치한 첫번째 단계로, 기기 간 데이터 전송의 기본이 되는 부분이다. 주로 데이터 전송을 위한 케이블, 허브, 리피터 등의 하드웨어 구성 요소와 관련된 역할을 담당하며, 이를 통해 데이터가 전기적, 광학적 신호로 변환되어 다양한 기기 간

데이터 링크 계층은 OSI 7 계층 중 2번째 계층으로 인접한 네트워크 노드끼리 데이터를 전송하는 기능과 절차를 제공하며, 1계층인 물리 계층에서 발생할 수 있는 오류를 감지하고 수정 및 흐름 제어 등을 담당한다. 대표적인 프로토콜로는 이더넷이 있다.제 1계층만 있다면

네트워크 계층이란? > 전 세계에는 수많은 네트워크가 있고 그 네트워크들은 서로 연결되어 거대한 인터넷을 이루고 있다. 오늘은 OSI 7계층 중 하나인 네트워크 계층에 대해서 알아보자. 설명에 앞서, 전 계층인 데이터 링크 계층에서는 이더넷 규칙을 기반으로 데이터

전송 계층에서 ‘전송’은 영어로 Transport에 해당한다. Transport는 화물을 수송하거나 운반하는데서 전송한다는 의미로 사용되는 영어 단어로, 컴퓨터 네트워크에서는 데이터가 전달될 때 전송한다고 표현한다. 이 영단어에서 유추할 수 있듯이, 전송 계층은 ‘데이

응용 계층은 OSI 모델의 최상위 계층, 7번째 계층으로, 다양하게 존재하는 응용 환경에서 공통적으로 필요한 기능을 다룬다. (여기서의 응용 계층은 세션 계층과 표현 계층을 포함한 것) 시스템 간의 응용 처리는 상호 간에 통신을 하면서 일련의 업무를 처리할 수 있도록

컴퓨터에서 4가지 핵심 부품을 고르라고 하면 크게 CPU, 메모리, 보조기억장치, 입출력장치가 있다.그중 사람의 뇌라고 할 수있는 CPU에 대해서 알아보자!CPU는 컴퓨터가 사용자의 명령에 대한 작업을 수행하는 처리장치이다. 푸드트럭에 비유하자면 푸드트럭에서 음식을 만

메모리란 컴퓨터에서 데이터를 저장하고 처리하는데 사용되는 임시 저장 공간이다.메모리는 CPU와 가까운 위치에 있어 데이터 접근 속도가 빠르며프로그램 실행 중 필요한 데이터를 저장하거나 불러오는데 사용된다.메모리는 일반적으로 다음과 같은 유형으로 나눌 수 있다.RAM이란

CPU 스케줄링은 운영체제가 CPU를 효율적으로 활용하기 위한 방법이다. 이는 여러 프로세스들 중에서 어떤 프로세스를 먼저 실행할지, 얼마나 오랫동안 실행할지 등을 결정하는 일련의 과정을 말한다. CPU 스케줄링은 시스템 성능을 높이고, 시스템 자원을 효율적으로 사용하

메모리 기본 내용중에 조리대에 해당하는 캐시의 “지역성”, “캐시히트/미스” 에 대해서 학습하고, 메모리가 어떻게 사용되는지 “메모리 할당”에 대해서 알아보자!캐시는 데이터를 미리 복사해 놓는 임시 저장소우리가 보는 화면에 출력되는 데이터는 결국 메인 메모리에 저장된

웹 사이트가 생겨나고 웹 사이트를 이용하는 인원이 급격히 늘어나면서 이러한 서버 트래픽을 감당하기에는 1대의 서버로는 부족하다. 이러한 문제를 해결하기 위해서는 여러대의 서버를 나눠서 일하게 만드거나(Scale-Out), 하드웨어의 성능을 올리는(Scale-up) 등

대칭키 암호화는 하나의 키로 데이터를 암호화하고 다시 같은 키로 복호화하는 방식으로 이 키를 암호화와 복호화 양쪽에서 모두 사용하기 때문에 '대칭키'라고 부른다.예를들면 두 친구가 비밀 편지를 주고받는다고 가정해보자. 친구 A가 "1234"라는 비밀 숫자를 만들어서 이

전송계층이란 ? OSI 7 계층모델의 4 계층에 해당하는 프로토콜로 네트워크 계층의 한계를 보완하고 응용 계층과의 연결점을 제공하는 계층이죠.전송 계층이 네트워크 계층의 한계를 보완하기 위한 계층이라고 했는데, 그 이유가 무엇이냐면 바로 네트워크 계층에는 핵심 프로토콜

프로세스 & 스레드 개념에 대해 알아보자 먼저 둘의 개념을 정의 하자면 다음과 같다. >- 프로세스(Process) 운영체제로부터 자원을 할당 받은 작업의 단위 >- 스레드(Thread) 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위 프로세스란? > 우리가 윈도우에서 사용하고 있는 .exe 나 Mac의 .dmg 와 같이 컴퓨터에서 ...

컨텍스트 스위칭(Context Switching)은 CPU가 한 프로세스에서 다른 프로세스로 전환할 때 발생하는 일련의 과정을 의미한다. CPU는 한 번에 하나의 프로세스만 실행할 수 있으므로, 여러 개의 프로세스를 번갈아가며 실행하여 CPU 활용률을 높이기 위해 이러
레이스 컨디션이란? > Race Condition이란 컴퓨터 시스템, 특히 동시 또는 병렬 컴퓨팅에서 프로그램 또는 시스템의 동작이 스레드 또는 프로세스가 실행되는 순서와 같은 이벤트의 상대적 타이밍에 따라 달라지는 상황을 의미한다. 만약 프로세스 Race Condit

데이터 값의 모임, 각 원소들이 논리적으로 정의된 규칙에 의해 나열되며 자료에 대한 처리를 효율적으로 수행할 수 있도록 자료를 구분하여 표현한 것을 의미한다.예를 들면 책장과 책장안에 책이 있다고 하면 책장과 책은 컴퓨터 세계에서는 메모리와 데이터로 유사하게 비유할 수