[이론]
-
프로젝트를 진행하던 중 로드밸런싱 개념을 접하게 되었다. 로드밸런싱이란 단어는 종종 들어봐서 대충 어떤 뜻인지 알고있었지만, 이번 기회에 확실하게 이해하기 위해 글을 쓰게 되었다. 1. 등장 배경 오늘날 대다수의 서비스는 한 대의 서버에 여러 대의 클라이언트가 접속하는 클라이언트-서버 모델을 사용한다. 서비스 초기 단계에는 클라이언트(사용자) 수가 적기 때문에 한 대의 서버만으로도 트래픽 처리가 가능하다. 하지만 사업의 규모 확장에 따라 클라이언트 수가 증가하게 되면 어떻게 될까? 클라이언트가 100명에서 10000명으로 늘어날 경우, 한 대의 서버가 처리해야할 트래픽 또한 대폭 증가하게 된다. 이런 경우 기존 서버의 성능으로는 트래픽 처리가 어려워 원활한 서비스 제공이 불가능할 것이다. 이렇게 증가한 ..
로드밸런싱(Load Balancing)프로젝트를 진행하던 중 로드밸런싱 개념을 접하게 되었다. 로드밸런싱이란 단어는 종종 들어봐서 대충 어떤 뜻인지 알고있었지만, 이번 기회에 확실하게 이해하기 위해 글을 쓰게 되었다. 1. 등장 배경 오늘날 대다수의 서비스는 한 대의 서버에 여러 대의 클라이언트가 접속하는 클라이언트-서버 모델을 사용한다. 서비스 초기 단계에는 클라이언트(사용자) 수가 적기 때문에 한 대의 서버만으로도 트래픽 처리가 가능하다. 하지만 사업의 규모 확장에 따라 클라이언트 수가 증가하게 되면 어떻게 될까? 클라이언트가 100명에서 10000명으로 늘어날 경우, 한 대의 서버가 처리해야할 트래픽 또한 대폭 증가하게 된다. 이런 경우 기존 서버의 성능으로는 트래픽 처리가 어려워 원활한 서비스 제공이 불가능할 것이다. 이렇게 증가한 ..
2023.01.09 -
TCP/IP 모델은 인터넷 모델이라고도 하며 실제 인터넷에서 사용하는 표준 프로토콜이다. 총 5개의 계층으로 이루어져 있으며 각각 물리, 데이터링크, 인터넷(네트워크), 전송, 응용 계층이다. 참고 물리, 데이터링크 계층을 합쳐서 네트워크 인터페이스 계층이라고도 한다. 이렇게 합칠 경우 TCP/IP 모델을 4 계층이라고 하기도 한다. 1. 물리 계층 물리적인 연결과 전기 신호 변환/제어를 담당한다. 변환 방법은 통신 매체에 의존하기 때문에 특정 프로토콜이 정해져 있지 않다. * 기능 1) 장치 연결 부분의 물리적인 특성을 명시 2) 비트의 전기적 혹은 광학적 표현 3) 데이터 속도, 비트의 동기화, 토폴로지, 전송 모드, 선로 구성 등에 관한 사항을 정의 2. 데이터링크 계층 네트워크 기기 간 데이터 전..
TCP/IP 모델TCP/IP 모델은 인터넷 모델이라고도 하며 실제 인터넷에서 사용하는 표준 프로토콜이다. 총 5개의 계층으로 이루어져 있으며 각각 물리, 데이터링크, 인터넷(네트워크), 전송, 응용 계층이다. 참고 물리, 데이터링크 계층을 합쳐서 네트워크 인터페이스 계층이라고도 한다. 이렇게 합칠 경우 TCP/IP 모델을 4 계층이라고 하기도 한다. 1. 물리 계층 물리적인 연결과 전기 신호 변환/제어를 담당한다. 변환 방법은 통신 매체에 의존하기 때문에 특정 프로토콜이 정해져 있지 않다. * 기능 1) 장치 연결 부분의 물리적인 특성을 명시 2) 비트의 전기적 혹은 광학적 표현 3) 데이터 속도, 비트의 동기화, 토폴로지, 전송 모드, 선로 구성 등에 관한 사항을 정의 2. 데이터링크 계층 네트워크 기기 간 데이터 전..
2020.09.07 -
1. 네트워크 구성요소 네트워크는 노드(Node)라고 불리는 장치들이 통신 링크로 연결된 집합체를 의미한다. 좀 더 쉽게 말하자면 "두 대 이상의 컴퓨터들을 연결하고 서로 통신(이야기)할 수 있는 것"이다. - 장치 : PC, 서버, 라우터, 스위치 - 링크 : 유선, 무선 2. 링크의 연결 형태 링크는 데이터를 한 장치에서 다른 장치로 전달하는 통신 경로이며 2가지 형태가 있다. 1) 일대일(Point-to-point) 연결 장치와 장치 간에 1대 1로 연결되어 있어 데이터를 받는 쪽에서 누가 보냈는지 확실히 알 수 있다. 2) 멀티포인트(Multipoint) 연결 장치들이 링크를 상호 공유하는 연결 형태로 데이터를 Mainframe에서 보내면 연결된 여러 장치가 데이터를 모두 받는다. 3. 네트워크 ..
네트워크 개요 - II1. 네트워크 구성요소 네트워크는 노드(Node)라고 불리는 장치들이 통신 링크로 연결된 집합체를 의미한다. 좀 더 쉽게 말하자면 "두 대 이상의 컴퓨터들을 연결하고 서로 통신(이야기)할 수 있는 것"이다. - 장치 : PC, 서버, 라우터, 스위치 - 링크 : 유선, 무선 2. 링크의 연결 형태 링크는 데이터를 한 장치에서 다른 장치로 전달하는 통신 경로이며 2가지 형태가 있다. 1) 일대일(Point-to-point) 연결 장치와 장치 간에 1대 1로 연결되어 있어 데이터를 받는 쪽에서 누가 보냈는지 확실히 알 수 있다. 2) 멀티포인트(Multipoint) 연결 장치들이 링크를 상호 공유하는 연결 형태로 데이터를 Mainframe에서 보내면 연결된 여러 장치가 데이터를 모두 받는다. 3. 네트워크 ..
2020.09.07 -
DNS에 대한 설명은 밑에 링크를 참고하길 바란다. mer1.tistory.com/6 DNS란? 1. DNS(Domain Name System) 사용자는 네이버에 접속하기 위해서 웹 브라우저의 주소창에 www.naver.com과 같은 도메인 네임을 입력한다. DNS 서버는 사용자가 입력한 도메인 네임을 125.209.222.141 같은 IP 주소 mer1.tistory.com DNS는 간단하게 도메인 이름(ex, www.naver.com)을 IP 주소로 변환해주는 것이다. 본 글에서는 이러한 DNS의 캐시 테이블에 대해 알아볼 것이다. 1. DNS 캐시 테이블 확인 및 삭제 명령어 설명 ipconfig /displaydns DNS 캐시테이블 출력 ipconfig /flushdns DNS 캐시테이블 삭제 ..
DNS 캐시 테이블이란?DNS에 대한 설명은 밑에 링크를 참고하길 바란다. mer1.tistory.com/6 DNS란? 1. DNS(Domain Name System) 사용자는 네이버에 접속하기 위해서 웹 브라우저의 주소창에 www.naver.com과 같은 도메인 네임을 입력한다. DNS 서버는 사용자가 입력한 도메인 네임을 125.209.222.141 같은 IP 주소 mer1.tistory.com DNS는 간단하게 도메인 이름(ex, www.naver.com)을 IP 주소로 변환해주는 것이다. 본 글에서는 이러한 DNS의 캐시 테이블에 대해 알아볼 것이다. 1. DNS 캐시 테이블 확인 및 삭제 명령어 설명 ipconfig /displaydns DNS 캐시테이블 출력 ipconfig /flushdns DNS 캐시테이블 삭제 ..
2020.09.04 -
1. ARP(Address Resolution Protocol) ARP는 논리적인 IP 주소를 기반으로 물리적인 MAC 주소로 바꾸어주는 주소 해석 프로토콜이다. 즉, IP 주소와 MAC 주소 사이를 연결해준다. IP 주소와 MAC 주소 구분 구성 체계 기능 IP 주소 가변적인 32-bit 크기의 네트워크 ID, 호스트 ID IP 주소 기반의 라우팅 MAC 주소 고정적인 48-bit 크기의 OUI와 일련번호 MAC 주소 기반의 스위칭 IP 주소와 MAC 주소의 차이를 정리하면 위 표와 같다. RARP (Reverse Address Resolution Protocol) ARP가 IP 주소를 이용해 MAC 주소를 바꾸어주는 프로토콜이었다면 RARP는 MAC 주소를 이용해 IP 주소를 매핑하는 프로토콜이다. ..
ARP 캐시 테이블이란?1. ARP(Address Resolution Protocol) ARP는 논리적인 IP 주소를 기반으로 물리적인 MAC 주소로 바꾸어주는 주소 해석 프로토콜이다. 즉, IP 주소와 MAC 주소 사이를 연결해준다. IP 주소와 MAC 주소 구분 구성 체계 기능 IP 주소 가변적인 32-bit 크기의 네트워크 ID, 호스트 ID IP 주소 기반의 라우팅 MAC 주소 고정적인 48-bit 크기의 OUI와 일련번호 MAC 주소 기반의 스위칭 IP 주소와 MAC 주소의 차이를 정리하면 위 표와 같다. RARP (Reverse Address Resolution Protocol) ARP가 IP 주소를 이용해 MAC 주소를 바꾸어주는 프로토콜이었다면 RARP는 MAC 주소를 이용해 IP 주소를 매핑하는 프로토콜이다. ..
2020.09.04 -
1. 커널(Kernel)이란? 운영체제의 핵심으로 각 장치들을 관리하고 제어하기 위한 소프트웨어이다. 커널이라는 이름은 단단한 껍질 안의 씨앗처럼 OS 내에 위치하고 전화기, 노트북 및 컴퓨터 등 유형에 관계없이 하드웨어의 모든 주요 기능을 제어하기 때문에 붙여진 이름이다. 컴퓨터가 부팅되면서 GRUB과 같은 부트로더에 의해 메로리에 로딩되어 컴퓨터까지 항상 메모리에 상주하면서 컴퓨터의 각 장치들을 관리하고 제어하는 역할을 한다. 즉, 다른 프로그램들은 필요할 때만 RAM에 적재해 사용하는 것과 달리 항상 메모리에 상주(Memory Resident)하며 그만큼 커널이 중요하다는 뜻이다. 2. 커널의 기능 구분 설명 프로세스 관리 프로세스에 CPU를 배분하고 작업에 필요한 환경을 제공 메모리 관리 프로세스..
커널(Kernel)1. 커널(Kernel)이란? 운영체제의 핵심으로 각 장치들을 관리하고 제어하기 위한 소프트웨어이다. 커널이라는 이름은 단단한 껍질 안의 씨앗처럼 OS 내에 위치하고 전화기, 노트북 및 컴퓨터 등 유형에 관계없이 하드웨어의 모든 주요 기능을 제어하기 때문에 붙여진 이름이다. 컴퓨터가 부팅되면서 GRUB과 같은 부트로더에 의해 메로리에 로딩되어 컴퓨터까지 항상 메모리에 상주하면서 컴퓨터의 각 장치들을 관리하고 제어하는 역할을 한다. 즉, 다른 프로그램들은 필요할 때만 RAM에 적재해 사용하는 것과 달리 항상 메모리에 상주(Memory Resident)하며 그만큼 커널이 중요하다는 뜻이다. 2. 커널의 기능 구분 설명 프로세스 관리 프로세스에 CPU를 배분하고 작업에 필요한 환경을 제공 메모리 관리 프로세스..
2020.07.09 -
프로세스는 실행 중인 프로그램이며 프로그램 자체가 프로세스는 아니다. 1. 프로세스와 프로그램의 차이 메모리 영역을 설명하기에 앞서 프로세스와 프로그램의 차이를 알아보자. 둘의 차이는 매우 명확하다. 프로그램은 보조 기억장치(하드디스크, SSD)에 존재하며 실행되기를 기다리는 명령어와 정적인 데이터의 묶음으로 그 자체로는 생명이 없다. 이 프로그램의 명령어와 정적 데이터가 메모리에 적재되면 생명이 있는 프로세스가 된다. 그래서 프로세스는 실행 중인 프로그램이라고 하는 것이다. 2. 메모리 영역 메모리 영역을 그림으로 표현하면 위와 같으며, stack 영역으로 갈수록 상위 주소이다. 구분 설명 Text 영역 프로그램 명령이 위치하는 곳으로 기계어로 제어되는 메모리 영역 Data 영역 전역/정적변수, 배열,..
프로세스의 메모리 영역프로세스는 실행 중인 프로그램이며 프로그램 자체가 프로세스는 아니다. 1. 프로세스와 프로그램의 차이 메모리 영역을 설명하기에 앞서 프로세스와 프로그램의 차이를 알아보자. 둘의 차이는 매우 명확하다. 프로그램은 보조 기억장치(하드디스크, SSD)에 존재하며 실행되기를 기다리는 명령어와 정적인 데이터의 묶음으로 그 자체로는 생명이 없다. 이 프로그램의 명령어와 정적 데이터가 메모리에 적재되면 생명이 있는 프로세스가 된다. 그래서 프로세스는 실행 중인 프로그램이라고 하는 것이다. 2. 메모리 영역 메모리 영역을 그림으로 표현하면 위와 같으며, stack 영역으로 갈수록 상위 주소이다. 구분 설명 Text 영역 프로그램 명령이 위치하는 곳으로 기계어로 제어되는 메모리 영역 Data 영역 전역/정적변수, 배열,..
2020.07.07 -
1. 운영체제(Operating System)란? 컴퓨터 시스템의 자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램들의 모임이다. 위 그림과 같이 운영체제는 하드웨어를 감추고 겉으로 다른 프로그램들을 지원해준다고 생각할 수 있다. 하드웨어를 감춘다는 것은 프로그램을 사용하는 사람이 편하게 쓸 수 있게 각종 기반 작업을 지원한다고 이해하면 된다. 정리하자면 운영체제는 컴퓨터의 성능을 높이고 사용자에게 편의성 제공을 목적으로 하는 컴퓨터 하드웨어를 관리하는 프로그램이다. 우리가 파워포인트나 워드를 사용할 때 cpu, 메모리가 어떻게 소통하는지 신경 쓰지 않는다. 이는 다 운영체제 덕분! 2. 운영체제의 종류 종류는 정말 다양하지만 개인 컴퓨터에..
운영체제(Operating System)1. 운영체제(Operating System)란? 컴퓨터 시스템의 자원들을 효율적으로 관리하며 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램들의 모임이다. 위 그림과 같이 운영체제는 하드웨어를 감추고 겉으로 다른 프로그램들을 지원해준다고 생각할 수 있다. 하드웨어를 감춘다는 것은 프로그램을 사용하는 사람이 편하게 쓸 수 있게 각종 기반 작업을 지원한다고 이해하면 된다. 정리하자면 운영체제는 컴퓨터의 성능을 높이고 사용자에게 편의성 제공을 목적으로 하는 컴퓨터 하드웨어를 관리하는 프로그램이다. 우리가 파워포인트나 워드를 사용할 때 cpu, 메모리가 어떻게 소통하는지 신경 쓰지 않는다. 이는 다 운영체제 덕분! 2. 운영체제의 종류 종류는 정말 다양하지만 개인 컴퓨터에..
2020.07.04