Programming/STUDY (9) 썸네일형 리스트형 [인강/CS 지식의 정석] 1. 개발자 필수 지식 데이터 교환 방식JSON (JavaScript Object Notation): 자바스크립트 객체 문법으로 구조화된 데이터 교환 형식 특징1. 객체 문법 외에도 단순 배열, 문자열도 표현 가능2. 프로그래밍언어, 프레임워크에 독립적임 => 여러 언어에서 각 라이브러리에 의해 사용됨 ex) Java - JSONObject, Python - dict3. API 반환 형태, 시스템 설정파일에 활용됨 문법1. key : value 형식{ "name" : "Harry", "age" : 17}중괄호 내부 key 값 중복 시 마지막 key:value 만 남음 2. 배열a =[ { "name" : "Harry", "age" : 17 }, { "name" : "Ron", "age" :.. [모두의 네트워크 기초] 7장 응용 계층 : 애플리케이션에 접속하는 단계 응용 계층의 역할: 사용자가 사용하는 애플리케이션(응용 프로그램)이 동작하는 곳 클라이언트가 서비스 요청하면 서버가 서비스 제공=> 데이터 전달을 위해 프로토콜이 사용됨 ex프로토콜내용포트 번호HTTP웹 사이트 접속80DNS이름 해석53FTP파일 전송20(데이터 전송)21(명령, 응답 제어)SMTP이메일 송신25POP3이메일 수신110 HTTP 프로토콜: 클라이언트, 서버가 어떻게 데이터를 교환할지 정한 규칙 (80번 포트) 문자 형태로 데이터가 전송되어 필요한 부분은 파싱(원하는 데이터를 특정 패턴, 순서로 추출해 가공)되어야 함 시작 라인헤더공백 (1줄)바디 ( ... ) 시작 라인HTTP메서드 경로 HTTP버전ex) GET /index.html HTTP/1.1H.. [모두의 네트워크 기초] 6장 전송 계층 : 오류 없이 데이터를 전달하는 단계 전송 계층의 역할혼잡 제어 (Congestion Control): 네트워크로 들어가는 정보량을 조절 => 네트워크가 혼잡해지지 않게 조절하는 방법 송신자 => 하나의 데이터를 보내고 수신자 측에서 ACK 전송 시 전송량을 2배씩 증가시켜감Time Out 발생하거나 동일한 ACK 여러 번 수신 시 데이터를 줄여서 보냄 흐름 제어(≒ 데이터 링크 계층의 정지-대기 방식) 송신자 => 하나의 데이터 전송 후 ACK 응답을 받은 후에야 다음 데이터 보냄 오류 제어 오류 검출 방법확인 응답송신 후 수신자로부터 ACK를 받지 않으면 오류로 판단함시간 초과특정 시간 내에 ACK를 받지 않으면 세그먼트에 오류 발생한 것으로 판단함 데이터 재전송 필요한 상황데이터가 중간에 손실될 때데이터 순서가 바꼈을 때데이.. [모두의 네트워크 기초] 5장 네트워크 계층 : 목적지를 찾는 단계 네트워크 계층의 역할라우터: 데이터가 어떤 경로로 전달돼야 하는지 알려주는 역할 (≒ 내비) 가장 빠른 길을 찾는 과정 => 라우팅IP 주소로 통신함 (WAN 환경에서 공인 IP ↔ 라우터) IP 주소란?: 인터넷 상에 있는 컴퓨터의 고유한 주소 (Internet Protocol) 랜 환경에서 스위치를 이용해 MAC 주소로 통신함=> 인터넷에 바로 접속할 수 없고, 다른 회사 컴퓨터와 통신이 불가능함=> IP 주소 활용 IP 할당 과정 KT, SKT 등 ISP(Internet Service Provider, 인터넷 서비스 제공자)는 인터넷을 설치함→ ISP와 내 컴퓨터가 연결되고, 공인 IP(인터넷을 할 수 있는 IP 주소)가 부여됨 IP 종류 공인 IP: ISP에 의해 전세계적으로 고유하게 .. [모두의 네트워크 기초] 4장 데이터 링크 계층 : MAC 주소로 통신하는 단계 데이터 링크 계층의 역할: 네트워크에서 데이터를 관리하고 전달하는 계층=> 데이터 전송의 신뢰성, 효율성에 중요한 역할을 함 데이터를 작은 프레임 단위로 분할MAC 주소를 활용해 장비를 식별 여러 기기가 동시에 데이터 전송하려고 할 때 신호 충돌→ 오류 탐지, 수정 + 흐름, 충돌 관리 회선 제어 : 신호 간 충돌 현상이 발생하지 않도록 제어 (오류 회피) 2개의 스테이션이 묻고 답하며 충돌 피함ENQ(Enquiry, 신호 시작), EOT(End of Transmission, 신호 종료) 신호 지정수신자는 신호 받으면 ACK를 송신자에게 보내 정상 수신 알리며 신호 간 충돌 피함 오류 제어 : 통신 장애(데이터/순서 변형)가 발생하지 않도록 오류를 검출하고 정정해 통신에 대한 신뢰성 확보하는 방.. [CS] 메모리의 구조 최근에 '읽고나면 진짜 쉬워지는 자료구조'라는 책을 읽고 있는데 1장의 제목이 '메모리 안 정보'였다. 변수, 배열, 문자열 등 자료구조에 대한 내용은 이해가 됐지만 정작 그 제목이 잘 이해되지 않았다. 이에 따라 프로그램 실행과 메모리의 관계, 메모리의 구조에 대해 찾아보며 메모리 내부에 정보가 어떻게 할당되는지 이해하려고 했다. 프로그램의 실행 프로그램은 메모리에 로드(load)된 후 실행된다. (=프로세스)실행 중에는 프로그램에서 사용하는 변수들을 저장할 메모리 공간도 필요하다. => 컴퓨터의 운영체제는 프로그램의 실행을 위해 다양한 메모리 공간을 제공한다. 메모리의 구조 코드 영역 (=텍스트 영역): 실행할 프로그램의 코드가 저장되는 영역 CPU => 코드 영역에 저장된 명령어를 하나씩 가져.. [모두의 네트워크 기초] 3장 물리 계층 : 데이터를 전기 신호로 변환하는 단계 물리 계층의 역할: 컴퓨터들을 물리적으로 연결하거나 데이터를 전기신호로 변환, 제어함 전기 신호: 전압이 일정한 패턴으로 변해 생기는 일련의 흐름 종류아날로그 신호 : 연속적으로 변하는 물결 모양 신호 (ex. 빛, 소리)디지털 신호 : 특정 값을 기준으로 불연속적으로 변하는 막대 모양 신호 (ex. 컴퓨터, 스마트폰)=> 평면=0, 올라가는 막대=1 데이터를 디지털 신호로 송수신하는 과정1. '데이터 전송' 문장을 0, 1 비트로 변환2. 비트를 전기 신호로 변환3. 디지털 신호로 전달4. 전기 신호를 0, 1 비트로 변환 랜카드: 컴퓨터와 인터넷을 연결하는 필수 장치=> 데이터가 컴퓨터 밖으로 나가는 출발점 랜 케이블을 연결할 수 있는 구멍(랜 포트) 존재 리피터와 허브가 통신하는 방법리피터.. [모두의 네트워크 기초] 2장 네트워크 통신을 위한 약속 네트워크의 규칙, 프로토콜: 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고받는 양식과 규칙의 체계 ex) OSI 7계층, TCP/IP 4계층 OSI 7계층과 TCP/IP 4계층OSI 7계층 등장 배경1980년 초 통신 기술이 빠르게 발전했을 당시, 여러 제조사에서 컴퓨터, 허브, 스위치 등을 생산함이때 제조사마다 각자의 프로토콜을 사용해 서로 다른 제조사들의 장치들은 호환 X 이를 해결하기 위해 OSI 7계층이라는 표준을 제정=> 서로 다른 장치 간의 통신을 보장=> 각 계층별로 필요한 장치들을 정의해 제조사들은 통신에 필요한 프로토콜 통일 결과적으로 서로 다른 제조사에서 만든 장치들 간 통신이 가능해짐 OSI 7계층 : 컴퓨터와 컴퓨터가 통신하는 구조를 7계층으로 정의해둔 약속(=프로토콜) ex.. [모두의 네트워크 기초] 1장 네트워크 첫걸음 모두의 네트워크 2회독 겸 정리를 위해 올리는 게시글입니다. 틀린 부분이 있다면 댓글 부탁드립니다^^ 네트워크란: 컴퓨터와 컴퓨터를 연결한 것: 각종 통신 장비들이 그물망처럼 연결되어 데이터를 교환하거나 협력해 일하게 해주는 통신망 인터넷으로 뉴스를 읽고, 검색하고, 이메일을 보낼 때 모두 네트워크를 이용한다. 네트워크는 왜 필요할까?1. 컴퓨터와 주변 장치 연결에 사용※ 주변 장치 : 컴퓨터에 연결해서 사용하는 장치 ex) 프린터, 태블릿, 스마트폰 2. 파일 전달 또는 문서 공동 작성, 편집에 사용 3. 팀 단위의 공동 작업(각자의 PC에서 수행한 작업을 한 곳에 취합) 시 사용 네트워크의 형태 : LAN과 WAN랜 (Local Area Network) : 건물 안, 특정 지역을 범위로 하는 .. 이전 1 다음