1강 운영체제가 뭐길래? 정보란건 뭘까? 정보의 최소 단위 : bit(Binary digit) 정보의 처리 : 정보의 상태 변환(0에서 1로, 1에서 0으로) 부울 대수(Boolean Algebra) : NOT, AND, OR 논리 게이트 : NOT, AND, OR, XOR, NAND, NOR 논리 회로 : IC, LCI, VLCI, ULCI, SoC 정보의 저장과 전송 : 플립-플롭, 데이터 버스, RF 무어의 법칙 황의 법칙 그래서, 컴퓨터가 정보를 어떻게 처리하죠? 덧셈은 ? 반가산기, 전가산기 뺄셈은 ? 2의 보수 표현법 곱셈과 나눗셈은 ? 덧셈과 뺄셈의 반복 → 단일 회로로 구현 가능 실수 연산은 ? 부동 소수점 표현법, 별도의 회로로 구성하면 GPU? 함수는 ? GOTO 그럼, 컴퓨터는 만능인..
도커란 ? 간단하게, 리눅스 컨테이너를 만들고, 사용할 수 있는 컨테이너화 기술 ! HOST - 운영체제가 설치된 메인 컴퓨터 Container - 각각의 호스트에서 격리된 각각의 실행 환경 운영체제 전체가 설치되어 있는 것이 아님 앱이 실행되는데 필요한 lib, bin 같은 파일만 설치되어 있음 Image - 컨테이너 실행에 필요한 파일과 설정 값 등을 포함하고 있는 것 ubuntu 이미지는 ubuntu를 실행하기 위한 모든 파일을 가지고 있음 MySQL 이미지는 debian을 기반으로 MySQL을 실행하는데 필요한 파일과 실행 명령어, 포트 정보 등을 가지고 있음 Layer? 이미지는 여러개의 읽기 전용 레이어로 구성되고, 파일이 추가되거나 수정되면 새로운 레이어 생성 ubuntu 이미지가 A+B+C..
ARQ 란 ? Automatic Repeat Request 통신회선 상에서 신뢰성 있는 데이터 전달을 위해 에러 검출 후 재전송을 통해 오류를 복구하는 에러 제어 방식 자동 반복 요청 에러가 발생한 경우, 재전송을 요구하는 방식 Stop and Wait 동작 방식 송신측은 프레임을 보내고 기다림과 동시에 타이머를 작동시킴 송신측에서는 ACK를 받으면 타이머를 멈춤 오류가 발생한 블록만 재전송하므로 구현 방법이 가장 단순하고 신뢰성 있는 통신 방식 다만, 한 프레임을 보낼 때 마다 기다리므로 속도가 느림 Go-Back-N 슬라이딩 윈도우 방식 연속적 ARQ(Continuous ARQ) 위에 두 개 다 Go Back n ARQ! 흐름제어를 위한, 검출 후 재전송 방식(ARQ)의 일종 일정한 윈도우 크기 이내..
3 Way-Handshake 3 Way-Handshake란? TCP에서 통신하는 장치 간에 서로 연결이 잘 되어 있는지 확인하는 과정, 방식 ㅎㅇ TCP 프로토콜은 연결 지향적, 상대방이 내 신호를 받을 수 있는지 확인한 후에 통신을 시작 → 내 신호를 받을 수 있는지 확인할 때 3 Way-Handshake! TCP 표준에서는 Client가 먼저 3 Way-Handshake를 시작하기 때문에 Client를 Active Opener라고 표현, Server를 Passive Opener라고 표현 💡 SYN(Synchronize Sequence Number) 연결 설정. Sequence Number를 랜덤으로 설정하여 세션을 연결하는데 사용하며 초기에 Sequence Number 전송 따라서 Connection..
HTTP와 HTTPS HTTP(HyperText Transfer Protocol) HTTP(Hyper Text Transfer Protocol)는 인터넷에서 데이터를 주고받을 수 있는 프로토콜 클라이언트와 서버 사이에 이루어지는 요청/응답 (request/response) 프로토콜 HTTP의 특징 TCP와 UDP를 사용하며, 80번 포트를 사용 비연결성(Connectionless) 클라이언트가 요청을 서버에 보내고 서버가 적절한 응답을 클라이언트에 보내면 바로 연결이 끊어짐 무상태성(Stateless) 연결을 끊는 순간 클라이언트와 서버의 통신은 끝나며 상태 정보를 유지하지 않음 HTTP Message의 구조 HTTP는 어플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동한다. HTTP는 상태를 가지고..
Representational? 어떠한 리소스의 특정 시점의 상태를 반영하고 있는 정보. Representation data, representation metadata로 구성 “hello” ⇒ representation data “Content-Type: text/plain”, “Content-Language:en” ⇒ representation metadata REST(Representational State Transfer) ? 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것 HTTP URI(Uniform Resource Identifier)를 통해 자원(Resource)을 명시 HTTP Method(POST, GET, PUT …) 을 통해 해당 자원에 대한 CRUD Operation..
HTTP 메소드와 상태코드 HTTP란 ? HTTP(Hyper Text Transfer Protocol)는 인터넷에서 데이터를 주고받을 수 있는 프로토콜 클라이언트와 서버 사이에 이루어지는 요청/응답 (request/response) 프로토콜 HTTP 메소드란? 클라이언트가 웹 서버에 사용자의 요청과 해당 요청의 종류를 알리는 수단 HTTP 메소드 종류 GET 서버에게 리소스를 달라는 요청 HEAD GET과 같지만, 서버는 응답으로 헤더만 반환 클라이언트는 리소스를 가져올 필요 없이 헤더만을 통해 정보를 얻어옴 PUT (수정) 서버가 Request의 본문을 갖고 요청 URI의 이름대로 새 문서를 만들거나, 요청 본문을 변경할 때 사용 PATCH (수정) 부분적인 수정을 적용하기 위한 메서드 POST (삽입..
ISO OSI 7 Layer 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리, 각 계층간의 인터페이스를 정의한 네트워크 표준 표준의 의미로 제작 계층 내용 PDU 1 Layer 물리 계층(Physical Layer) Bit 2 Layer 데이터 링크 계층 (Datalink Layer) Frame 3 Layer 네트워크 계층 (Network Layer) Packet 4 Layer 전송 계층 (Transport Layer) Segment 5 Layer 세션 계층 (Session Layer) Data 6 Layer 표현 계층 (Presentation Layer) Data 7 Layer 응용 계층 (Application LLayer) Data 물리 계층 (Physical Layer) 전기적, 기계적 기..