고재성, 이상훈님의 책을 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 라우터의 동작 방식과 역할 라우터는 최적의 경로를 라우팅 테이블에 저장한 후 패킷이 라우터로 들어오면 도착지 IP 와 라우팅 테이블을 비교해서 최선의 경로로 패킷을 보낸다. → 경로 지정 스위치와 반대로 라우터는 들어온 패킷의 목적지 주소가 라우팅 테이블에 없으면 패킷을 버린다. (스위치는 모든 포트에게 브로드캐스트한다, 플러딩) → 브로드캐스트 컨트롤 라우터는 패킷 포워딩 과정에서 2계층 헤더 정보를 제거한 뒤 새로운 3계층 헤더를 만들어낸다. → 프로토콜 변환 경로지정 라우터의 가장 중요한 역할은 경로 지정이다. → 프로토콜 변환이 선행되어야 한다. 경로 정보를 모아서 라우팅 테이블을 만들고 패킷이 라우터로 들어오..
고재성, 이상훈님의 책을 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 스위치 장비 동작 스위치는 네트워크에서 통신을 중재하는 장비이다. → 스위치를 사용하면 여러 단말이 한꺼번에 통신할 수 있어 통신하기 위해 기다리거나 충돌 때문에 대기하는 문제가 해결된다. 스위치의 핵심 역할은 누가 어느 위치에 있는지 파악하고 실제 통신이 시작되면 자신이 알고 있는 위치로 정확히 패킷을 전송하는 것이다. → 이것은 스위치가 2계층 정보를 이해하고, → MAC 주소와 단말이 위치하는 인터페이스 정보(포트번호)를 매핑한 MAC 주소 테이블(임시 테이블)을 갖고 있어서 가능하다. 테이블에 없는 도착지 주소를 가진 패킷이 스위치로 들어오면 스위치는 전체 포트로 패킷을 전송한다.(브로드캐스트, 플러딩) 테이블..
고재성, 이상훈님의 책을 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 유니캐스트, 멀티캐스트, 브로드캐스트, 애니캐스트 네트워크에서 출발지에서 목적지로 데이터를 전송할 때 사용하는 통신 방식에는 다음 4가지가 있다. ⇒ 출발지가 아닌 목적지 주소를 기반으로 구분한다. 유니캐스트 (실제로 사용하는 대부분의 통신 방식) 1:1 통신 출발지와 목적지가 1:1로 통신 브로트캐스트 1:모든 통신 동일 네트워크에 존재하는 모든 호스트가 목적지 유니캐스트로 통신하기 이전 주로 상대방의 정확한 위치를 알기 위해 통신(ARP.. 이후 등장) 멀티캐스트 1:그룹 통신 하나의 출발지에서 다수의 특정 목적지로 네트워크 전송 아프리카TV 와 같이 실시간 방송을 보기위해서 사용(단방향) 애니캐스트 → 같은 목적..
고재성, 이상훈님의 책을 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 네트워크 연결 구분 네트워크는 규모와 관리 범위에 따라 LAN, MAN, WAN 으로 구분된다. LAN : 사용자 내부 네트워크(Local) MAN : 한 도시 정도를 연결하고 관리하는 네트워크 WAN : 멀리 떨어진 LAN 을 연결해주는 네트워크(원격) LAN 소규모 네트워크를 뜻하며, 먼 거리를 통신할 필요가 없어 스위치 같이 비교적 간단한 장비로 연결된 네트워크를 LAN 이라 불러왔다. 현재는 대부분 이더넷 기반 전송 기술을 사용한다. WAN 먼 거리에 있는 네트워크와 연결하기 위해서 사용한다. 멀리 떨어진 LAN 을 서로 연결하거나 인터넷에 접속하기 위한 네트워크가 WAN 에 해당한다. 특별한 경우가 아니면 직..
고재성, 이상훈님의 책을 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 네트워크 구성도 살펴보기 홈 네트워크 홈 네트워크를 구성하기 위해서는 모뎀, 공유기, 단말기 간에 물리적 연결이 필요하다. 무선 연결이라고 부르는 것도 실제적으로는 공기라는 매체를 통해서 물리적으로 연결이 되는 것. 크게 공기를 통한 무선 연결 / 유선 랜카드 or 랜케이블을 통한 유선 연결로 나뉜다. 데이터센터 네트워크 안정적이고 빠른 대용량 서비스 제공을 목표로 한다. 10 ,25 ,40 ,100 ,400 기가와 같은 고속 이더넷 기술이 사용된다. *대역폭? : 통신에서 이용 가능한 최대 전송 속도, 인터넷이 느리면 대역폭을 늘리라는 소리가 조금 더 높은 용량의 네트워크 속도를 사용하라고 이해하면 된다. 최근 늘어..
조영호님의 책 오브젝트를 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 상속의 2가지 용도 타입 계층 구현 : 부모 클래스는 일반적인 개념을 구현하고, 자식 클래스는 특수한 개념을 구현한다. 코드 재사용 : 상속만으로 자식 클래스는 부모 클래스의 코드를 재사용 할 수 있다. 하지만 부모 클래스와 자식 클래스가 강하게 결합된다는 단점 때문에, 객체 지향에서 권장되는 방법은 아니다. → 상속을 사용하는 일차적인 목표는 코드 재사용이 아닌 타입 계층을 구현하는 것이다. → 이를 위해서 객체의 행동을 기반으로 타입 계층을 구성해야 한다. 타입 개념 관점의 타입 → 공통의 특징을 공유 타입 : 우리가 인식하는 객체들에 적용하는 개념이나 아이디어를 가리켜 타입이라고 부른다. 심볼(symbol) : ..
조영호님의 책 오브젝트를 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. 상속의 목적은 코드 재사용이 아닌, 타입 계층의 구조화를 위해서 사용해야한다. → 다형성을 위한 서브타입 계층을 구축하는 것의 진정한 목적을 가지고 있어야만 한다! 관점에 따른 상속 데이터 관점의 상속 : 자식 클래스의 인스턴스 안에 부모의 인스턴스를 포함하는 것. 행동 관점의 상속 : 부모 클래스가 정의한 일부 메서드를 자식 클래스의 메서드로 포함하는 것. → 런타임에 시스템이 자식 클래스에 정의되지 않은 메서드가 있을 경우, 이 메서드를 부모 메서드에서 탐색한다. → 객체의 경우에는 서로 다른 상태를 저장할 수 있도록 인스턴스별로 독립적인 메모리를 할당받아야한다. 하지만 메서드의 경우에는 동일한 클래스의 인스턴스끼..
조영호님의 책 오브젝트를 보며 정리한 내용입니다. 문제가 될 시 해당글 삭제하겠습니다. Chapter 10 상속과 코드 재사용 [상속과 중복코드] 중복코드의 단점.. 중복 코드는 변경을 방해한다! (중복 코드를 제거해야 하는 이유) 코드를 수정하는데 드는 노력이 몇배나 증가한다. 요구사항이 변경 됐을 때 두 코드를 함께 수정해야 한다면 이 코드는 중복이다! DRY 원칙(Don't Repeat Youtself) 모든 지식은 시스템 내에서 단일하고, 애매하지 않고, 정말로 믿을 만한 표현 양식을 가져야한다. 상속 객체지향에서 중복코드를 제거하는 첫번째 방법! 하지만 상속을 통한 중복코드 제거는 부모클래스와 자식클래스의 결합도를 높인다는 단점이 있다. [취약한 기반 클래스 문제] 취약한 기반 클래스 문제 : ..