티스토리 뷰

 

개요

제이펍 IT 전문서 리뷰어 활동 첫 서적으로 “그림으로 공부하는 IT 인프라 구조(개정판)” 을 리뷰해본다.

알라딘 링크: http://aladin.kr/p/zMw2F

리뷰 동기

서비스, 애플리케이션을 만들어 세상의 요구사항을 만족시켜주는 개발이 있다면, 그렇게 만든 개발을 현실세계 속에서 지속적으로 살아 숨쉬게 만드는 인프라가 있다. 개발에 비해 상대적으로 재미없고 쉬워보이지 않는 인프라이지만 정말 개발자라면 놓칠 수 없는 주제이다. 개발자로 살아가며 직간접적으로 마주치는 인프라에 대하여 그 전반을 훑어주는 책이다 싶어 골랐다.

감상

중간 쯤 읽을 때까지의 감상은 일본 특유의 꼼꼼하고 친절한, 초급자를 위한 책이라는 느낌이었다. 인프라와 그 아키텍처 전반을 훑어보고, 물리적인 측면에서 서버 면면을 챙겨본다. 그리고 기본이 되는 3계층형 시스템을 소개해준다. 그런 다음에, 인프라의 측면에서 챙겨보아야 할 컴퓨터 이론을 기본적인 항목에서부터, 나아가 좀더 챙겨보아야할 부분까지 이야기한다.

하지만, 이어지는 부분은 결코 가볍게 넘길 내용들이 아니었으며 새로이 알게되는 부분들이 많았다. 6장부터는 네트워크로 어떻게 시스템들이 연결되는지, 그러한 시스템을 굳건하게 만들어주는 다양한 부분, 지점에의 이중화들, 그리고 나아가 시스템의 성능까지 고려해야 할 부분을 책의 분량에 너무 과하거나 부족하지 않게 적당한 넓이와 깊이로 다루어주었다.

덧붙이자면, 책에 나오는 그림들을 하나하나 꼼꼼히 단계를 밟아가며 챙겨보기를 추천한다. 한 눈에 잘 안들어올 수 있겠지만, 저자가 정성들여 정리하였다는 것을 알 수 있다.

인상적이었던 부분

TCP의 역할과 철학

TCP의 역할을 간단히 말하면 ‘애플리케이션이 보낸 데이터를 그 형태 그대로 상대방에게 확실하게 전달하는 것이다. 단, 가능한 한 주변에는 민폐를 끼치지 않는다’라고 할 수 있다. p195

내가 대학원에서 네트워크 관련 연구를 했을 때, 어느 연구 발표회 중에 ‘이 연구는 공평성을 고려하고 있는가?’라는 질문을 자주 받은 적이 있다. 아무리 고성능의 통신 구조를 생각했다고 해도 주변 통신에 민폐를 끼치는 방법이라면 환영받지 못한다. p196

’The Internet is for Everyone’ p197, RFC3271 ’Be strict when sending and tolerant when receiving’ p197, RFC1958

고도로 발달한 이과의 기술은 철학과 구분할 수 없다. 아름다운 부분이었다.

IPv4와 IPv6

IPv4와 IPv6는 명칭은 비슷하지만 기본적으로 상호 호환성이 없으며, 전혀 다른 프로토콜이라 보는 것이 맞다. p206

참고로, IPv4와 IPv6가 호환성이 없다고 말했는데, TCP 및 그 윗 단계의 HTTP는 양쪽 버전을 모두 지원하기 때문에 사용자는 IPv4로 통신을 하고 있는지 IPv6로 통신하고 있는지 의식할 필요가 없다. 이것도 계측 구조의 장점이라 할 수 있다. p211

둘이 호환성이 없는 것은 이제서야 알게 되었다.

IPv4 헤더에는 헤더 체크섬을 저장하는 장소가 있다. 이를 통해 헤더 정보가 파괴됐는지 여부를 확인할 수 있지만, 헤더 정보에 변경이 있으면 체크섬을 재계산해야 한다. (중략) 본래 TCP 헤더에도 체크섬이 있으며, 이 체크섬 계산으로 IP 주소 부분을 포함한 일치성을 확인하고 있다. 이 때문에 IPv6 부터는 체크섬이 깔끔하게 제외됐다. p214

IPv6가 좀더 복잡하고 난해할 것 같지만, 위 체크섬 사례뿐 아니라 헤더를 40바이트의 고정 길이를 사용하는 등 단순화한 부분이 많다. 이를 통해 라우터가 해야할 일이 줄어들었다.

 

반응형
반응형
잡학툰 뱃지
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함