본문 바로가기

CS

(22)
2.3 네트워크 기기 2.3.1 네트워크 기기의 처리범위 계층별로 처리 범위를 나눌 수 있다. 물리 계층을 처리할 수 있는 기기와 데이터 링크 계층을 처리할 수 있는 기기 등이 있다. 상위 계층을 처리하는기기는 하위계층을 처리할 수 있지만 반대는 불가능하다. 애플리케이션 계층: L7 스위치 인터넷계층: 라우터, L3 스위치 데이터 링크 계층: L2 스위치, 브리지 물리 계층: NIC, 리피터, AP 2.3.2 애플리케이션 계층을 처리하는 기기 L7 스위치 스위치는 여러 장비를 연결하고 데이터 통신을 중재하며 목적지가 연결된 포트로만 전기 신호를 보내 데이터를 전송하는 통신 네트워크 장비 로드밸런서라고 하며 서버의 부하를 분산 클라이언트로부터 오는 요청들을 뒤쪽의 여러 서버로 나누는 역할을 하며 트래픽 증가를 목표로 함 URL..
2.2 TCP/IP 4계층 모델 (2) 링크계층 링크 계층은 전선, 광섬유, 무선 등으로 실질적으로 데이터를 전달하며 장치 간에 신호를 주고받는 '규칙'을 정하는 계층 이를 물리 계층과 데이터 링크 계층으로 나누기도 하는데 물리 계층은 무선 LAN과 유선 LAN을 통해 0과 1로 이루어진 데이터를 보내는 계층을 말하고 데이터 링크 계층은 '이더넷 프레임'을 통해 에러확인, 흐름제어, 접근제어를 담당하는 계층을 말함 유선 LAN 유선 LAN을 이루는 이더넷은 IEEE802.3이라는 프로토콜을 따르며 전이중화 통신을 쓴다. 전이중화 통신 전이중화 통신은 양쪽 장치가 동시에 송수신할 수 있는 방식을 말함 송신로와 수신로로 나눠서 데이터를 주고받으며 현대의 고속 이더넷은 이 방식을 기반으로 통신 CSMA/CD 이전에는 유선 LAN에 '반이중화 통신'..
2.2 TCP/IP 4계층 모델 (1) 2.2.1 계층구조 TCP/IP 계층은 네 개의 게층을 가지고 있으며 OSI 7계층과 많이 비교한다. 응용 계층(application 계층) FTP, HTTP, SSH, SMTP 등 응용 프로그램이 사용되는 프로토콜 계층이며 웹 서비스, 이메일 등 서비스를 실질적으로 사람들에게 제공하는 층이다. FTP: 장치와 장치 간의 파일을 전송하는 데 사용되는 표준 통신 프로토콜 SSH: 보이지 않은 네트워크에서 네트워크 서비스를 안전하게 운영하기 위한 암호화 네트워크 프로토콜 HTTP: world wide web을 위한 데이터 통신의 기초이자 웹사이트를 이용하는 데 쓰는 프로토콜 SMTP: 전자 메일 전송을 위한 인터넷 표준 통신 프로토콜 전송 계층 송신자와 수신자를 연결하는 통신 서비스를 제공하며 연결 지향 데..
2.1 네트워크의 기초 2.1 네트워크의 기초 네트워크란 노드와 링크가 서로 연결되어 있거나 연결되어 있지 않은 집합체를 뜻함 노드란? 서버, 라우터, 스위치 등 네트워크 장치를 의미하고 링크는 유선 or 무선을 의미 2.1.1 처리량과 지연시간 좋은 네트워크는 많은 처리량을 처리하고 지연시간이 짧고 장애 빈도가 적으며 좋은 보안을 갖춰야한다. 처리량 처리량이란 링크를 통해 전달되는 단위 시간당 데이터 양이다. 단위로는 bps(bits per second) 사용 처리량은 트래픽, 네트워크 장치 간의 대역폭, 중간에 발생하는 에러, 하드웨어 스펙에 영향을 받음 트래픽은 서버와 스위치 등 네트워크 장치에서 일정시간 내에 흐르는 데이터의 양을 말함 지연시간 지연 시간은 요청이 처리되는 시간을 말하고 어떤 메세지가 두 장치 사이를 왕..
2. 프로그래밍 패러다임 2️⃣ 프로그래밍 패러다임 프로그래밍 패러다임은 프로그래머에게 프로그래밍의 관점을 갖게해주는 역할을 하는 개발 방법론 프로그래밍 패러다임은 크게 선언형, 명령형으로 나누며, 선언형은 함수형이라는 하위 집합을 가진다. 명령형은 다시 객체지향, 절차지향으로 나뉜다. 2-1 선언형과 함수형 프로그래밍 무엇을 풀어내는가에 집중하는 패러다임 const ret = [1,2,3,4,5,11,12] ret.reduce((max, num) => num > max ? num : max, 0) console.log(ret) // 12 reduce는 배열만 받아서 누적한 결괏값을 반환 순수함수들을 블록처럼 쌓아 로직을 구현하고 고차 함수를 통해 재사용성을 높인 프로그래밍 패러다임 함수가 일급객체이기 때문에 객체지향 보다는 함..
1. 디자인 패턴 1️⃣ 디자인패턴 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 '규약'형태로 만들어 놓음 1-1 싱글톤 패턴 하나의 클래스에 하나의 인스턴스만 가지는 패턴 데이터베이스 연결 모듈에 많이 사용함 하나의 인스턴를 다른 모듈들이 공유하며 사용해서 비용이 줄어들지만 의존성은 높음 ✔ 단점 TDD(test driven development)를 할 때 단위 테스트를 하는데 단위 테스트는 서로 독립적이어야 함 그러나 싱글톤패턴은 하나의 인스턴스를 기반으로 구현해서 테스트마다 독립적인 인스턴스 만들기 어려움 모듈 간의 결합이 강함 ✔ 의존성 주입 싱글톤 패턴은 모듈간의 결합이 강하다는 단점은 의존성 주입을 통해 조금 더 느슨하게 만듦 의존성 주입자가 간적접으로 의존성을 주입 테스팅, 마이그레이션 수월함..