컴퓨터 네트워크 12

TIL 20241113 (레이스 컨디션과 동기화)

어제 들은 이론강의를 다시 보면서 간단하게 정리해보았다.(레이스 컨디션과 동기화, 데드락의 개념과 간단한 주요사항)레이스 컨디션여러 스레드가 동시에 공유 자원에 접근하여 의도치 않은 결과과 나오는 상황 원인공유 자원에 대한 동기화되지 않은 접근문제점예측 불가능한 동작, 데이터 손상, 프로그램 비정상 종료방지 방법뮤텍스(Mutex), 세마포어(Semaphore), 락 (Lock), 모니터 (Monitor)뮤텍스하나의 스레드가 자원을 사용 중일 때 다른 스레드의 접근을 막는다세마포어동시에 접근할 수 있는 스레드의 수를 제한한다락특정 코드 블록에 대해 스레드가 순차적으로 접근하도록 제한한다모니터락과 조건 변수를 결합하여 스레드가 특정 조건을 만족할 때까지 대기하도록 한다  데드락여러 프로세스가 서로 자원을 기..

TIL 20241102(멀티 쓰레딩)

멀티 쓰레딩하나의 프로세스 내에서 여러 개의 스레드를 동시에 실행하고 관리하는 기술 1. 프로세스와 스레드란?프로세스 : 현재 실행중인 프로그램의 객체이다.                  독립적은 메모리 공간을 가지고 운영 체제에 의해 관리된다.스레드 : 프로세스 내에서 실행되는 작은 실행 단위이다.              같은 프로세스 내에서 메모리 공간을 공유하고 스레드 간의 통신이 빠르고 효율적이다. a. 메모리 영역힙 영역 : 동적으로 할당된 메모리가 저장되는 공간이다.               프로그램 실행중에 크기가 변할 수 있다.스택 영역 : 함수 호출 시 지역 변수와 매개변수가 저장되는 공간이다.                   스택은 LIFO(Last  in first out) 구조로 동..

컴퓨터의 메모리

1. 개념CPU가 데이터를 빠르게 읽고 쓸 수 있게 하는 장치다.주기억장치는 RAM이고 현재 실행 중인 프로그램과 데이터를 저장한다.보조기억장치는 하드 드라이브(HDD), SSD 등으로 데이터를 영구적으로 저장하는 역할을 한다. 2. 주소공간메모리에서 각 데이터나 명령어가 위치하는 주소를 의미한다.컴퓨터는 각 메모리셀에 고유주소를 할당해 CPU가 데이터를 빠르게 읽을 수 있도록 한다.주소의 종류에는 2가지가 있다.물리적 주소 : 실제 메모리 하드웨어에서의 주소논리적 주소 : 프로그램이 사용하는 주소로 운영체제가 메모리 관리를 통해 물리적 주소로 매핑한다.주소 공간의 크기는 시스템 아키텍처에 따라 달라진다.예를 보면 32비트 시스템은 최대 4GB(2^32)의 주소 공간을 가질 수 있고 64비트 시스템은 1..

컴퓨터 CPU

CPU(중앙 처리 장치)1. 개념컴퓨터 구성 단위 중 4대 기능인 중앙 처리 장치의 줄임말이다. (사람으로 치면 뇌)컴퓨터의 핵심 구성 요소이고 모든 연산과 처리를 담당하는 장치다.CPU는 프로그램의 명령을 해석하고 실행하여 컴퓨터의 기능을 수행한다. 2. CPU의 세부장치1. 산술 논리 장치(ALU : Arithmetic Logic Unit)산술 연산과 논리 연산을 수행하는 장치이다.CPU가 데이터를 처리하는데 핵심 역할을 한다. 2. 제어 장치(CU : Control Unit)CPU 내부의 다른 요소를 관리하고 프로그램의 명령어를 이용해 실행 순서를 제어한다.메모리와 데이터 전송을 조정한다. 3. 레지스터CPU 내부 고속 메모리로 필요한 데이터를 임시로 저장한다.일반적으로  빠른 접속 속도로 CPU의..

TIL 240930 (흐름제어와 혼잡제어)

흐름제어와 혼잡제어는 TCP 통신에 관한 두가지 기법이다.TCP 통신에는 4가지 문제점이 존재한다.packet이 손실될 수 있다.packet의 순서가 바뀔수 있다.네트워크가 혼잡하다. (Congestion)수신자가 과부하되어 데이터를 받을 수 없게 된다.흐름제어송신과 수신 간의 데이터 처리 속도 차이를 해결하기 위한 것이다.송신 쪽 전송량이 수신측 처리량보다 클 경우 패킷이 전송량을 제어해줘야 한다. 흐름제어에는 두가지 방식이 있다.1. Stop and Wait (정지 - 대기)먼저 전송한 패킷에 대한 응답을 받아야  그 다음 패킷을 전송할 수 있다. 2. Sliding Window 수신 측에서 설정한 윈도우 크기만큼 송신 측에서 응답 없이 세그먼트(데이터 작은 단위)를 전송할 수 있게해서 데이터 흐름을..

OSI 응용계층

응용계층사용자와 가장 밀접한 계층으로 사용자와 컴퓨터 사이의 인터페이스의 역할을 담당한다.통신 상대와의 통신 가능성을 확인하고 오류 회복 절차와 데이터 무결성 제어에 대한 동기화 및 설정을 한다.송신 측 : 사용자로부터 데이터를 받아 표현 계층으로 전달수신 측 : 표현계층으로부터 받은 데이터를 사용자에게 표시  HTTP의 개념HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 응용계층의 프로토콜이다.HTTP는 웹에서 이루어지는 모든 데이터 교환의 기초이며, 클라이언트 - 서버 프로토콜이기도 하다.클라이언트 - 서버 프로토콜이란 수신자 측(보통 웹브라우저)에 의해 요청이 초기화 되는 프로토콜을 의미한다.즉, HTTP는 클라이언트가 요청을 생성하기 위한 연결을 연 다음 응답을 받을 때 까지 ..

TIL 240924 (OSI 전송 계층)

OSI 4계층(전송 계층)OSI 전송 계층은 서비스를 구분하고 신뢰성 있는 데이터의 전송 방식을 담당하는 계층이다.포트번호를 사용하여 목적지인 프로세스까지 데이터가 도달하게 도와준다.보낼 데이터의 용량, 속도, 목적지 등을 처리한다.  TCP/UDPTCP와 UDP는 OSI 표준모델과 TCP/IP 모델의 전송계층에서 사용되는 프로토콜이다. TCP핵심연결 지향적 프로토콜, 3 - way - handshake 사용3 - way hand shake 과정SYN (동기화) > SYN + ACK (동기화 및 확인) > ACK (응답 확인)특징신뢰성, 순차 전송 보장, 흐름 및 혼잡 제어, 오류 감지, 데이터 손실 시 재전송 가능세그먼트데이터를 세그먼트 단위로 전송하여 TCP 헤더를 붙여 처리단점1 : 1 통신만 가능..

OSI 데이터링크 계층

데이터링크 계층데이터링크 계층은 OSI 7 계층의 2번째 계층으로 장치간 신호를 전달하는 물리 계층을 이용해 네트워크 간의 데이터를 전송할 수 있게 도와준다. 이 사진에서 MAC은 데이터를 전송하기 위해 있는 컴퓨터의 물리적 주소다.여러 대의 컴퓨터를 효율적으로 연결하여 데이터를 통신할 수 있게 한다.물리 계층에는 없는 기능이 있다.주소 할당 : 물리 계층에서 받은 신호들이 네트워크 상의 장치에 안전하게 올 수 있게 한다. (MAC 주소 이용)오류 감지: 신호가 전달되는 동안 오류를 감지하고 감지가 되면 데이터를 폐기한다.데이터링크의 세부 계층 (2계층)데이터링크 계층은 MAC과 LLC 2개의 부 계층으로 나뉜다.LLC(논리적인 제어)는 데이터 패킷의 오류 검출 및 흐름제어 역할을 하고 여러 프로토콜을 ..

OSI 물리 계층

물리계층의 기본 개념물리 계층은 OSI 모델의 1번째 계층이다.데이터 통신의 가장 기본적인 계층으로 데이터 전송을 위한 물리적 매체와 신호를 다룬다.물리계층은 전기적, 기계적, 절차적 특성을 정의 하여 데이터가 전송될 수 있도록 한다.상위 계층들이 원할하게 작동할 수 있도록 지원한다.이 계층이 잘 작동하지 않으면 데이터 전송이 불가능하므로 네트워크의 안전성과 선능에 큰 영향을 미친다.물리계층의 주요 구성 요소전송 매체 : 데이터가 전송되는 매체인데 여기서 유선(동축 케이블, 광섬유)과 무선(Wi-Fi, 블루투스) 매체가 있습니다.신호 : 데이터를 전기적 신호로 변환하여 전송하는데, 이는 아날로그 또는 디지털 형태일 수 있고 전송 속도와 대역폭에 영향을 미친다. 물리계층의 역할비트 전송 : 데이터를 비트 ..

OSI 7계층 개념 정리

각 계층은 특정 기능을 수행하고, 상위 계층은 하위 계층의 서비스를 사용한다. 계층주요 개념물리 계층전기적, 기계적, 기능적 물리적 자원으로 데이터 전송을 담당데이터 링크 계층 같은 네트워크 안에서 데이터가 올바른 장소로 가는걸 도와줌네트워크 계층 데이터를 전달 장소까지 라우팅(최적 경로)을 담당전송 계층 정보를 정확하게 전달하게하고 데이터 흐름 및 오류를 제어를 담당세션 계층 두 장치가 서로 통신하는걸 돕고 관리하는 역할을 담당표현 계층 애플리케이션이 데이터를 이해할 수 있게 도와줌응용 계층 사용자가 애플리케이션을 통해 네트워크를 이용할수 있게 도와줌 계층예시물리 계층이더넷, RS-232데이터 링크 계층이더넷, PPP(점대점 프로토콜)네트워크 계층IP(인터넷 프로토콜), ICMP전송 계층TCP(전송 제..