본문 바로가기

전체 글109

무선 및 이동 네트워크 개요 -무선 네트워크의 요소 1) 무선 호스트(wireless host) : 무선 호스트는 유선 네트워크의 경우처럼 애플리케이션을 실행하는 종단 시스템 장치다. ex) 스마트폰, 태블릿, 랩톱, 센서 등의 IoT(Internet of Things) 장치, 가전제품, 자동차, 그 외 인터넷에 연결된 무수히 많은 장치 2) 무선 링크(wireless communication link) : 호스트는 무선 통신 링크를 통해 기지국(base station)이나 다른 무선 호스트에 연결된다. 여러가지 무선 링크 기술들은 전송 속도와 전송 거리 면에서 차이가 있다. 무선 링크는 네트워크 가장자리에 있는 호스트를 코어에 있는 네트워크 인프라스트럭처로 연결해준다. 무선 링크는 때로는 네트워크 코어에서도 라우터, 스위치 등 네.. 2023. 5. 7.
Design Principles - Solid 4. SOLID : 객체지향과 연관이 깊다. 1) Single Responsibility Principle (SRP, 단일 책임 원리) : 모든 모듈은 기능의 한 부분에 대한 책임만을 가져야 한다. = 하나의 기능은 하나의 모듈만을 수행하도록 모듈화되어야 한다. case 1) 한 모듈에 많은 책임들이 있음 원래 Student클래스는 너무 많은 책임을 가짐 -> 각 클래스들이 하나의 책임만 가지도록 4개의 클래스로 나눔 case 2) 한 책임이 여러 모듈에 분산되어있음 logging : 프로그램의 실행 과정을 저장, 문제가 생겼을 때 log 데이터만 살펴봄. ex.블랙박스 모듈 하나만으로는 동작했는지 모름. 모든 모듈들이 log라는 하나의 책임을 가지고 있어야함. 모든 모듈이 관여하기 때문에 설계하기 쉽지.. 2023. 5. 6.
총정리: 웹페이지 요청에 대한 처리 과정 학생 밥이 학교의 이더넷 스위치에 랩톱을 연결하고 www.google.com을 다운로드 하는 과정을 보자. 6.7.1 시작하기: DHCP, UDP, IP 그리고 이더넷 밥은 랩톱을 켠 후 학교 이더넷 스위치에 연결되어 있는 이더넷 케이블에 연결한다. 학교 라우터는 ISP comcast.net에 연결되어 있고, comcast.net 은 이 학교에 DNS 서비스를 제공하며, DNS 서버는 학교 네트워크가 아닌 컴캐스트 네트워크에 있고 DHCP 서버는 라우터에서 실행되고 있다고 가정하자. 1) 밥의 랩톱 운영체제는 DHCP 요청 메시지를 만들어서 이 메시지를 목적지 포트 67(DHCP 서버)과 출발지 포트 68(DHCP 클라이언트)을 갖는 UDP 세그먼트에 넣는다. 이 UDP 세그먼트는 브로드캐스트 IP 목적.. 2023. 5. 5.
데이터 센터 네트워킹 데이터 센터는 인터넷에 연결되어 있을 뿐만 아니라 내부 호스트들 간 상호연결을 위해 자체 데이터 센터 네트워크(data center network)를 갖고 있다. 데이터 센터의 3가지 목적 1. 웹 페이지, 검색 결과, 전자메일, 스트리밍 비디오와 같은 콘텐츠 제공 2. 검색 엔진을 위한 분산 인덱스 계산과 같은 특정 데이터 처리 작업이 가능한 대량 병렬 컴퓨팅 인프라스트럭처 역할 3. 다른 회사에게 클라우드 컴퓨팅(cloud computing)을 제공 6.6.1 데이터 센터 구조 1) 호스트 : 데이터 센터에서 작업을 수행한다. 피자 박스 모양의 블레이드(blade)라고도 불린다. CPU, 메모리, 디스크 저장장치를 갖고 있는 범용 호스트다. 호스트들은 20~40대의 블레이드를 적재할 수 있는 랙(ra.. 2023. 5. 4.
Design Principles - Step-wise Refinement, Abstraction 설계 원리 4가지 : Step-wise Refinements, Abstraction, Modularization, SOLID 1. Step-wise Refinement : 내가 작성할 모듈이 복잡할 때 한번에 상세내용까지 설계하지 않고 먼저 윗 단계에서 봤을 때 가장 대표적인 단계 찾는 것, 그리고 그 후에 다시 또 각 단계의 세부 단계 찾기. ex) Tic-tac-toe -> 상세화 2. Abstraction(추상화) : 중요하지 않은 것은 생략하여 중요한 것만 보여주는 것. ex) 지하철 노선도 두 역 사이의 거리는 전혀 보여주지 않고, 다음 역, 이전 역 이러한 정보들만 보여주고 있다. 1) Procedural abstractions(함수를 사용한 추상화) : procedural interface는.. 2023. 5. 3.
링크 가상화: 링크 계층으로서의 네트워크 6.5.1 다중 프로토콜 레이블 스위칭(MPLS, Multiprotocol label switching) 1. 목표 : 고정 길이 레이블과 가상 회선(Virtual Circuit)을 기반으로 데이터그램을 전달하기 위함. 목적지 기반 IP 데이터그램 인프라스트럭처를 포기하는 것이 아니라, 가능한 경우 데이터그램을 선택적으로 레이블링해서 라우터로 하여금 고정 길이 레이블을 기반으로 데이터그램을 전달할 수 있도록 목적지 기반 IP 데이터그램 전달 하부구조를 확장하는 것이다. 2. MPLS 헤더 MLPS가능 라우터에 의해 처리되는 링크 계층 프레임의 형식은 2계층 헤더와 3계층 헤더 사이에 작은 MPLS 헤더를 가진다. MPLS 헤더에는 레이블, 실험을 위해 예약된 3개의 비트, 일련의 스택된 MPSL 헤더들의.. 2023. 5. 2.