0.Introduction- 책에서 강조하는 핵심은 다음과 같다.- 네트워크 애플리케이션 개발의 핵심은 서로 다른 end system에서 돌아가는 프로그램들이 네트워크로 통신되도록 하는 것이다.- 라우터/스위치 같은 network-core 장비에 애플리케이션 코드를 넣지않는다.- 코어 장비는 애플리케이션 계층에서 동작하지 않고 end system에만 애플리케이션을 두는 설계가 폭발적인 서비스 확산을 가능케 했다. - Figure 2.1에서 파란 화살표는 "애플리케이션 레벨의 논리적 통신"을 보여주는데,- 실제 경로는 ISP/데이터센터/모바일/홈 네트워크를 복잡하게 지나가지만, - 애플리케이션이 보기에 통신 주체는 end systems이라고 볼 수 있다.- 즉, 코어는 범용 전달(패킷 포워딩)에 집중하고,..
분류 전체보기
0. Introduction: 인터넷은 왜 이렇게 공격당하기 쉬울까?- 해당 챕터의 출발점은 "What can go wrong?"이다.- 책에서도 Network 보안이 네트워킹의 중심 주제가 됐다고 하고, 대표적인 문제들을 먼저 훑고있다. 1. Malware: "호스트"가 뚫리면 네트워크는 공격 플랫폼이 된다.- 인터넷에서 우리가 받는 "좋은 것들"과 함께 malware도 들어와 감염될 수 있고,- 감염되면 파일 삭제, spyware설치로 민감정보(비밀번호/키스트로크 등) 수집 후 유출같은 일을 한다.- 또 감염 호스트들이 botnet으로 묶여 스팸 발송이나 DDoS에 동원될 수 있다.- 중요한 점은 많은 malware들은 self-replicating이라 한 번 뚫리면 지수적으로 확산된다고 한다. 2...
0. Introduction- 해당 챕터는 인터넷처럼 복잡한 시스템을 Layering해서 설계/분석/구현을 가능하게 만드는 방법론을 다룬다.- 핵심은 다음과 같이 세가지이다.i) Layered Architecture가 왜 필요한가ii) Internet 5-layer protocol stack & 각 계층의 service modeliii) Encapsulation 1. Layer Architecture: 복잡도를 "수평 분해"로 제어- 여행을 기능의 연쇄로 보게 되면, 구조가 잘 보이지 않는다.- 하지만 다음과 같이 잘라내면 어떨까?- 기능을 "수평 레이어"로 잘라내면, 서비스 경계가생긴다.- 다음과 같이 책에선 항공 시스템을 티켓/수화물/게이트/이착륙/라우팅 같은 "레이어"로 수평 분해한다.- 각 레이..
0. Introduction- 해당 챕터에선 "패킷교환망에서 성능을 어떻게 분해해서 해석할 것인가"를 정리하는 챕터다.- 해당 챕터에서 잡아야 하는 축은 3개이다.i) Delay(지연) : 어디서 얼마나 생기나?ii) Loss(손실) : 왜 드롭이 발생하고, 언제 심해지나?iii) Throughput(처리량/전송률): ent-to-end로 "실제로" 몇 bps가 나오나 1. Delay의 "4분해" : nodal delay = Processing + queueing + transmission + propagation - 책에선 라우터 A의 nodal delay를 4가지 구성요소로 분해한다. - 이 그림 하나로 1.4의 절반은 끝나게 된다. 라우터 A를 기준으로 패킷은 i) Processing delay d..