Computer Science 8

[네트워크] 캡슐화와 역캡슐화

캡슐화와 역캡슐화상위 계층에서 하위 계층으로 데이터를 보내면 물리 계층에서 전기 신호 형태로 네트워크를 통해 신호를 보냄. 받는 쪽에서는 다시 하위 계층에서 상위 계층으로 데이터를 보냄.이렇게 데이터를 보내는 과정을 캡슐화(Encapsulation), 받는 과정을 역캡슐화(Decapsulation)라고 한다.캡슐화(Encapsulation)데이터를 전송하는 쪽(송신 측)에서 데이터 송신시, 필요한 정보를 데이터에 추가하여 다음 계층으로 보낸다.이러한 정보를 헤더(Header) 정보라고 하고, 실제 데이터를 바디(Body)라고 한다.데이터를 하위 계층으로 내려보낼 때마다 문방구 캡슐에 포장해서 보낸다고 생각하면 됨.송신 측상위 → 하위헤더를 추가역캡슐화(Decapsulation)데이터를 받는 쪽(수신 측..

[네트워크] 네트워크의 분류

📚 네트워크의 분류네트워크를 분류할 수 있는 방법이 2가지 있다.범위에 따른 분류메시지 교환 방식에 따른 분류범위에 따른 분류크게 3가지로 나뉜다.LANWANMANLANLAN(Local Area Network)은 가까운 지역을 연결한 근거리 네트워크로, 홈용, 사무용 같이 비교적 소규모의 네트워크를 말한다.이더넷(Ethernet), WiFi높은 속도, 낮은 에러율, 낮은 비용WANWAN(Wide Area Network)은 먼 거리에 있는 네트워크를 연결하는 광역 네트워크이다.인터넷이 WAN으로 분류되며, 다른 LAN에 속한 호스트와 메시지를 주고 받아야 할 때 필요하다.특별한 경우가 아니면 직접 구축할 수 없음. → ISP(Internet Service Provider)를 통해 회선을 임대해서 사용. ..

[네트워크] IP와 Port

📚 IP와 PortIP는 네트워크 상에서 장치를 식별하는 주소이고, Port는 해당 장치 내의 특정 프로세스를 구분하는 논리적 번호다.우리가 흔히 알고있는 IP주소의 그 IP가 맞다. IP (Internet Protocol)IP는 인터넷을 하기 위한 통신 규약을 의미한다.우리가 인터넷 망에서 해외에 있는 친구한테 "Hello"를 보낸다고 가정했을 때 어디로 보내야 하는지, 각 패킷이 어떻게 전달되어야 하는지를 정해주는 최소한의 규칙이 바로 인터넷 프로토콜(IP) 이다. 인터넷 프로토콜의 역할지정한 IP 주소(IP Address)에 데이터 전달패킷(Packet)이라는 통신 단위로 데이터 전달IP 주소 (Internet Protocol Address)IP 주소는 네트워크 상에서 장치(Host)를 식별하기 ..

[네트워크] OSI 7계층

📚 OSI 7계층이란?OSI 7계층 모델(OSI 7Layer)은 국제 표준화 기구(ISO)에서 네트워크 통신을 7개의 논리적인 계층으로 나눈 네트워크 참조 모델이다. 7계층으로 나누면 통신이 일어나는 과정을 단계별로 알 수 있고, 문제가 발생했을 때 특정 계층으로 문제를 좁힐 수 있어 그 부분만 수정할 수 있음.OSI 7 계층 구조 OSI 7계층은 다시 두 가지 계층으로 나눌 수 있음.1~4 계층 : 데이터 플로 계층(Data Flow Layer) / 하위 계층(Lower Layer)5~7 계층 : 애플리케이션 계층(Application Layer) / 상위 계층(Upper Layer)프로토콜(Protocol)이란 통신을 하기 위한 규정이나 규약을 의미함. 1. 물리 계층1계층은 물리 계층(Physi..

[컴퓨터 구조] 인터럽트(Interrupt)

인터럽트(Interrupt)CPU의 작업을 방해하는 신호 지난 글에서 명령어 사이클(Instruction Cycle)을 수행할 때 인터럽트 발생했을 때의 과정을 따로 정리했다. 인터럽트는 영어로 interrupt, '방해하다', '중단시키다'라는 뜻CPU의 작업을 중단할만큼 '꼭 주목해야 할 때', '얼른 처리해야 할 다른 작업이 생겼을 때' 발생인터럽트의 종류는 동기 인터럽트(예외), 비동기 인터럽트(하드웨어 인터럽트)로 나뉜다. 예외 (동기 인터럽트)동기 인터럽트(Synchronous Interrupt)는 CPU에 의해서 발생함.예상치 못한 상황에 마주칠 경우프로그래밍상의 오류와 같은 예외적인 상황에 마주쳤을 경우예외(Execption) 라고 부름예외가 발생하면 CPU는 하던 일을 중단하고 해당 예..

[컴퓨터 구조] CPU의 작동원리

CPU의 작동원리CPU는 메모리에 저장된 명령어를 읽어 들이고, 해석하고, 실행하는 장치연산장치(ALU), 제어장치, 레지스터로 구성되어있다.ALU(산술논리연산장치)산술 연산과 논리 연산을 수행ALU가 받아들이는 정보계산을 하기 위해서는 피연산자와 수행할 연산이 필요함.레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어신호를 받아들인다.ALU가 내보내는 정보연산을 수행한 결과를 내보낸다.플래그(flag) : 연산 결과에 대한 부가 정보, 플래그 레지스터에 저장됨레지스터로부터 피연산자를 받아와 연산을 수행하고, 연산 결과를 다시 레지스터에 저장함.제어장치제어신호를 내보내고, 명령어를 해석함.제어장치가 받아들이는 정보클럭(clock)해석할 명령어플래그제어 버스를 통해 전달된 제..

[SW] 도메인-엔티티-비즈니스 로직 개념 정리

도메인-엔티티-비즈니스 로직 개념코드를 작성하다보니까 도메인, 엔티티, 비즈니스 로직에 대한 개념이 헷갈려서 이참에 확실하게 정리하고 가자는 생각이 들었다.물론 내가 실제 작성하는 스프링 코드에서의 개념과 도메인 주도 개발에서의 개념이 살짝 다르겠지만 우선은 DDD를 기준으로 개념 정리를 하게 되었다.이 개념을 확실히 하면 실제 코드, 로직을 짜는데에도 도움이 될 것이라고 판단했다.도메인(Domain)예로 들어, 온라인 서점은 온라인으로 책을 판매하는 데 필요한 상품 조회, 구매, 결제, 배송 추적 등의 기능을 제공한다. 개발자 입장에서 온라인 서점은 구현해야 할 소프트웨어의 대상이 된다.이처럼 소프트웨어로 해결하고자 하는 문제 영역을 도메인(domain)이라고 한다. 하위 도메인(Subdomain)하나..

Computer Science 2025.10.19

[컴퓨터 구조] 컴퓨터 기본 구조

컴퓨터 기본 구조컴퓨터의 기본 구조에 대해 알아보자.컴퓨터는 크게 하드웨어와 소프트웨어로 나뉜다. 하드웨어 : 컴퓨터를 구성하는 기계적 장치소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어 집합하드웨어중앙처리장치(CPU)주기억장치(메모리) : RAM보조기억장치 : HDD입출력장치 : 모니터, 키보드소프트웨어시스템 소프트웨어 : 운영체제, 컴파일러응용 소프트웨어 : 워드프로세서, 스프레드시트데이터와 명령어컴퓨터는 프로그래밍 언어를 직접 이해하지 못한다.컴퓨터가 이해할 수 있는 정보는 데이터와 명령어이다. 데이터(Data)컴퓨터가 처리하는 정보 자체 (숫자, 문자, 이미지 등)메모리에 저장되고 CPU가 처리명령어(Instruction)CPU에게 "무엇을 할지" 알려주는 지시사항프로그램은 명령어들의 집..