품목정보
발행일 | 2023년 04월 27일 |
---|---|
쪽수, 무게, 크기 | 260쪽 | 175*235*14mm |
ISBN13 | 9791158394196 |
ISBN10 | 1158394195 |
발행일 | 2023년 04월 27일 |
---|---|
쪽수, 무게, 크기 | 260쪽 | 175*235*14mm |
ISBN13 | 9791158394196 |
ISBN10 | 1158394195 |
1장: 웹 우리가 몰랐던 월드 와이드 웹 __월드 와이드 웹이란? __정보를 잇는 연결 고리 하이퍼텍스트 __햄버거로 알아보는 웹의 구성 요소 인터넷과 웹은 다를까? __인터넷 = 웹? 웹 애플리케이션 아키텍처 __웹 클라이언트, 그리고 웹 서버 __보조 요리사 WAS __거대한 냉장고, 데이터베이스 브라우저 삼대장: HTML, CSS, 자바스크립트 __튼튼한 뼈대, HTML __CSS로 더 화려하게 __뭐든 할 수 있는 자바스크립트 웹 1.0부터 웹 3.0까지, 가볍게 읽는 웹 변천사 __웹의 탄생과 1.0 __읽고 쓰는 웹 2.0 __온전히 내 것으로, 웹 3.0 그림으로 한눈에 보는 웹 2장: 미리 알아두면 좋은 네트워크 개념 어디까지가 네트워크일까? __네트워크란? LAN, WAN, 그리고 인터넷 __도란도란 LAN __WAN으로 지구 반대편까지 OSI 7계층이 그렇게 중요한가요? __OSI 7계층이 생긴 이유 __OSI 7계층이 생기면서 달라진 점 OSI 7계층과 TCP/IP 4계층 __프로토콜의 집합, TCP/IP 4계층 데이터는 어떻게 이동할까? __OSI 모델로 보는 데이터 전송 __계층끼리 데이터를 주고받는 방식: 캡슐화와 역캡슐화 그림으로 한눈에 보는 네트워크와 OSI 3장: URL 웹의 주소, URL __URL이란? __URL의 구조 URL과 URI는 같은 건가요? __URL = URI? URL을 IP로 변환하는 DNS __도메인과 IP 주소 __도메인의 구조 __어디로 모실까요? DNS __DNS에서 원하는 IP 주소 찾기 __그림으로 한눈에 보는 URL 4장: IP 신속 배달 IP __데이터를 작게 자른 패킷 __IP의 특징 IP 주소로 전 세계와 통신하기 __내 IP 주소는? __IPv4 주소의 구조 __네트워크 주소와 호스트 주소 많이, 중간, 적게, 클래스 __미니 돈가스는 4개만? __필요에 맞게, 클래스 __클래스의 한계 IP 고갈 문제의 대두 __IPv4가 부족한 이유 CIDR와 서브넷 마스크 __클래스가 필요 없는 CIDR __서브넷 마스크로 네트워크 주소 찾기 __CIDR 표기법으로 더 편하게 그때그때 할당하는 DHCP __고정 IP와 유동 IP __DHCP는 어떻게 IP 주소를 할당할까? 사설 IP와 NAT __공인 IP와 사설 IP __NAT으로 인터넷 통신하기 IPv6는 IPv4와 무엇이 다를까? __차세대 IP, IPv6 그림으로 한눈에 보는 IP 5장: TCP 신뢰하는 TCP __전송 제어 프로토콜, TCP __지금 내 상태는? 헤더와 플래그 핸드셰이크로 확실하게 __시작은 3방향 핸드셰이크 __마무리는 4방향 핸드셰이크 사이좋게 데이터 주고받는 법, 흐름 제어 __흐름 제어란? __제어의 정석, 정지-대기 방식 __한 번에 보내는 슬라이딩 윈도 혼잡 제어로 네트워크 나눠 쓰기 __혼잡 제어란? __혼잡 제어의 원리 __합 증가/곱 감소, 느린 시작 더 빠르게 UDP __TCP와 UDP의 차이는? 그림으로 한눈에 보는 TCP 6장: HTTP 웹의 짝꿍 HTTP __HTTP란? __HTTP의 메시지 구조 GET vs. POST, PUT vs. PATCH __요청 메서드의 종류 __안전한 메서드, 멱등성을 가진 메서드 헤더가 왜 중요할까? __HTTP 헤더의 특징 __크롬 브라우저에서 직접 헤더 확인하기 __HTTP 헤더의 종류 상태 코드로 통신 상태 한눈에 파악하기 __상태 코드란? __5가지 클래스로 알아보는 상태 코드 보안을 책임지는 요소들: SSL, TLS, HTTPS __HTTP의 한계, 보안 __보안을 책임지는 HTTPS __SSL과 TLS는 무엇이 다를까? __대칭키, 공개키로 안전하게 암호화하기 __SSL 동작 과정 간략히 보는 HTTP 변천사 __태초에 HTTP가 있었으니 __HTTP의 진정한 시작, 1.0 __진짜 표준 HTTP/1.1 __더 빠르게 HTTP/2 __따끈한 새 버전, HTTP/3 그림으로 한눈에 보는 HTTP 7장: HTTP 특징과 데이터 저장 방식 HTTP는 상태가 필요해 브라우저 안의 작은 조각, 쿠키 __브라우저에 데이터를 저장하는 이유 __숨겨진 작은 조각, 쿠키 __쿠키의 단점 쿠키를 넘어서, 웹 스토리지와 IndexedDB __더 많이 더 빠르게, 웹 스토리지 __브라우저 안의 데이터베이스, IndexedDB 세션으로 안전하게 저장하기 __서버에 데이터를 저장하는 세션 그림으로 한눈에 보는 상태 저장 방식 8장: 네트워크 접속 장치 더 멀리, 라우터 __네트워크의 중계자, 라우터 __라우팅 테이블로 최적의 경로 찾기 이더넷이란? __인터넷 말고 이더넷 __이더넷의 규격과 구성 요소 랜 카드는 통역사 __네트워크 인터페이스 카드란? __진짜 고유 번호, MAC 주소 허브와 스위치로 데이터 전송하기 __라우터와 허브와 스위치 __모두에게 공평한 허브 __한 번에 한 곳만, 스위치 얼마나 빨리 갈까? 케이블 __네트워킹 케이블의 종류 __이더넷 규격 다시 보기 무선의 시대, Wi-Fi __2G와 5G는 무슨 차이가 있을까? __와이파이의 보안 데이터가 충돌하지 않는 이유 __이더넷의 CSMA/CD __무선랜의 CSMA/CA 그림으로 한눈에 보는 네트워크 접속 장치 9장: OSI 7계층 다시 OSI 7계층 다시 보기 |
지은이
임지영
깊게 이해하고 쉽게 설명하는 것이 목표인 개발자이다. 다양한 프로젝트 개발과 대회 활동으로 쌓은 경험, 개발자로 지내며 떠오른 생각들을 정리해 꾸준히 브런치에 투고하여 개발 입문자를 위한 정보를 제공하는데 힘쓰고 있다. 현재는 크래포톤에서 웹 개발자로 근무하고 있다.
네트워크를 알게 되면 내가 속한 전문 분야뿐만 아니라 다양한 개발 직군이 바라보는 시야를 얻을 수 있습니다. 더불어 원론적인 기술에 대한 탄탄한 이해를 바탕으로 새로운 트렌드를 빠르게 이해하는 데도 도움이 됩니다. 또 개발자가 아니어도 내가 일상에서 숨 쉬듯 접하는 네트워크의 구조와 흐름을 이해하는 것은 좋은 경험이 됩니다.
들어가며
이 책을 읽으면 좋을 독자
웹과 네크워크의 동작 원리가 이제 막 궁금해진 초보자
네트워크에 대해 알고 싶지만 기존의 이론 위주 학습으로는 어려움을 느꼈던 독자
이 책에서 다루는 내용
●웹과 인터넷에 대한 기초 지식
● OSI 7계층으로 보는 데이터 송수신
● URL의 구조와 DNS 동작 방식
● IP 주소와 고갈 문제로 인한 대안
● TCP와 UDP로 보는 패킷 전송
● HTTP의 구조 및 변천사
●안전한 데이터 전송을 위한 SSL, TLS, HTTPS
●쿠기와 웹 스토리지로 보는 데이터 저장 방식
●이더넷과 Wi-Fi의 구성 요소
●라우터, 허브, 스위치의 데이터 전송 방식
컴퓨터를 통해 오랫동안 인터넷에 접속하고 다양한 정보를 얻어왔지만 웹, http, 네트워크에 관한 정보를 잘 알지 못했다.
이 책을 읽는 내내 머리를 끄덕끄덕하며 줄을 그으면서 '아하 그렇구나'를 자꾸 말하게 된다. 컴퓨터에서 자주 보았지만 잘 알지 못했던 용어들에 대해 알아가는 재미가 있다. 그냥 어림짐작으로 대충 이럴 거야하고 알고 있던 정보들을 상세하고 이해하기 쉽게 알려준다. 속 시원하게 하나하나 가려운 곳을 긁어주는 느낌이랄까.
저자가 직접 그린 그림으로 내용을 한눈에 들어오게 예를 들어 설명을 해준다. 어려웠던 내용들이 가볍게 이해된다.
한 장이 끝날 때마다 노트 필기처럼 요약정리도 해 놓았다. 내용들을 자연스럽게 정리할 수 있다.
위의 사진은 웹의 구성요소를 햄버거를 사는 과정을 예를 들어 설명한다.
URL(Uniform Resource Locator)= 패스트푸드점 주소
HTTP(Hypertext Transfer Protocal) = 메뉴를 주문하기 위해 점원과 대화
: 웹에서도 데이터를 받아 오기 위해 웹 브라우저와 웹 서버 간에 통신 필요함. 웹끼리 이해할 수 있는 통신 교환 방식을 정리한 약속
HTML(Hypertext Markup Language) = 원했던 햄버거를 받음
: 웹 또한 웹 서버에서 HTML이라는 언어로 작성된 문서를 받아 웹 페이지를 표시함
브라우저 삼대장
HTML, CSS, 자바스크립트
HTML(Hypertext Markup Language): 마크업 언어란 간단히 설명해 화면의 구조를 명시하는 언어. 웹 페이지를 만들 때 넣어야 하는 내용을 적재적소에 삽입해 웹 페이즐 원하는 형태의 구조로 짤 수 있게 돕는 언어
CSS(Cascading Style Sheets): 칙칙한 HTML을 우리 눈에 예쁘고 잘 들어오게 꾸며주는 역할
자바스크립트: HTML 이 웹 사이트의 구조를, CSS가 보이는 모습을 정의, 자바스크립트는 이 두 가지를 제외한 대부분의 웹 사이트 기능을 담당한다.
HTML와 CSS는 정적 표현만 제공자바스크립트는 동적 기능을 제공
1징 웹 중에서
위 그림은 도메인과 IP 주소에 대한 설명이다.
도메인: 예술의 전당이나 남산 한옥마을처럼 우리가 입력하는 장소명
IP 주소: 실제 그 장소명이 위치한 주소
도메인이 없다면 우리는 위에 나오는 여러 숫자로 이루어진 IP 주소를 검색창에 입력했어야 된다.
도메인
IP 주소를 몰라도 특정 웹 사이트 주소에 쉽게 접근할 수 있도록 기억하기 쉬운 형태의 호스트 이름
DNS
DNS는 도메인과 IP 주소를 서로 변환해 주는 역할을 하는 시스템을 의미하며 이러한 변환 시스템을 운영하는 서버를 DNS 서버, 또는 네임 서버라고 합니다.
p64
한 장이 끝날 때마다 노트 필기처럼 요약정리한 페이지가 있어서 앞의 내용을 정리할 수 있게 도와준다.
3장의 URL에 관한 내용을 이 한 장 안에 다 담았다.
4장에서 다루는 IP 편에서 네트워크 주소와 호스트 주소에 대한 설명을 보여주는 부분이다.
택배 상자에서 네트워크 부분은 아파트 단지가 되고 호스트 부분은 동호수를 예를 들어 설명한다.
4장에서는 IP 고갈의 문제를 어떻게 해결했는지에 대해서도 자세히 다루는데 흥미 있다.
IP 고갈 문제 해결 방법
1. 고정 IP 대신 유동 IP 사용
2. 같은 네트워크 안에서는 공인 IP 대신 사설 IP를 사용. 외부와 통신할 땐 NAT(Network Address Translation)으로 IP 변환(사설 IP를 공인 IP로 변환)
3. IPv6 : 128bit , 기존 IPv4 주소가 32bit로 구성
p107
6장에서 다루는 HTTP의 특징을 설명하는 부분이다.
HTTP는 현재 통신이 요청인지 응답인지에 따라 메시지의 형식이 다른 것을 커피 주문서와 영수증을 비유해서 나타냈다.
HTTP의 특징
● HTTP은 요청 메시지와 응답 메시지의 형식이 다르다.
● HTTP는 상태를 가지지 않는다.
상태가 없다는 것은 클라이언트와 서버가 첫 번째 통신에서 데이터를 주고받아도
두 번째 통신에서 클라이언트는 앞서 받은 데이터를 유지하지 않는다.
● HTTP는 비연결성 프로토콜이다.
비연결성이란 클라이언트와 서버가 연결을 맺은 후 클라이언트의 요청에 서버가 응답을 마치면 연결이 끊어지는 특성.
p136
HTTP의 메시지 구조에 대해서도 흥미롭게 읽었다. 요청 라인과 응답 라인의 구조에 대해서 자세하게 알 수 있었다.
HTTP 와 HTTPS의 차이가 무엇일까?
HTTP의 보안 문제
1. 중간자 공격
네트워크 통신 도중 중간자가 침입해 통신 내용을 도청하거나 조작하는 공격 기법
2. 통신 상대를 확인하지 않는다.
다른 누군가가 통신에 몰래 끼어들어 내용을 엿보거나 의미 없는 요청을 보내도 속수무책
p159
HTTP의 보안 문제로 인해 사용자들의 피해를 막기 위해 탄생한 프로토콜이 HTTPS(Hypertext Transfer Protocal Secure)이다.
위 그림을 보고 짐작할 수 있듯이 HTTP에서는 누구나 볼 수 있었던 메시지를 통신하는 당사자만 볼 수 있게 암호화해 HTTP의 보안 문제를 해결했다. HTTPS는 보안(secure)이 강화된 프로토콜이다.
7장에서 HTTP 특징에 관한 부분을 보여주는 부분이다.
무상태 프로토콜: 상태를 저장하지 않는 프로토콜, IP나 UDP가 대표적
상태 프로토콜: 상태 정보를 저장하는 프로토콜, TCP
HTTP는 상태를 저장하지 않는다는 무슨 말일까?
마치 쇼핑몰에 로그인한 뒤 장바구니에 물건을 담으려면 다시 로그인하라고 하는 상황과 비슷하다. 그런데 실제로는 우리가 즐겨 찾는 쇼핑몰 사이트를 보면 로그인하고 물건을 장바구니에 담는 과정이 자연스럽다. 이게 어떻게 가능할까?
외부에 따로 저장소를 두어 그곳에 상태를 저장하고 관리해서 HTTP의 단점을 보완한다.
여기서 어떤 것이 떠오를 것이다. 우리가 자주 보는 쿠키.
쿠키만 보면 왠지 불안을 느낀 건 나 만일까?? 그런 불안을 이 책을 보면 해결할 수 있다.
쿠키
브라우저 안의 작은 조각 쿠기는 데이터베이스에 개개인의 데이터를 관리하는 번거로움을 해결해 준다. 서버의 데이터베이스에 저장하지 않고 클라이언트, 즉 브라우저에서 해당 웹 사이트를 일부를 저장하기 위해 클라이언트 기반 저장소 쿠키가 탄생했다.
쿠키의 단점
1. 보안에 취약
쿠키는 누구나 쉽게 확인할 수 있고 수정, 삭제 가능
2. 웹 통신의 성능 저하 원인
요청마다 메시지에 쿠키 정보가 함께 전송되어 데이터양이 커짐
이 장에서는 쿠키 외에 상태 저장 방식에 대한 것을 알 수 있다.
낯선 누군가를 마주하는 일은 처음에는 늘 그렇듯 어색하고 불편합니다. 다만 그 사람을 달리 보게 되는 사건이나 순간이 생기면 그 뒤에는 자연스레 호기심이 생기고 상대방에 대해 더 알아보고자 하는 자신을 발견하게 됩니다 이는 비단 사람에게만 국한되지 않습니다. 책, 기술, 심지어는 취미까지, 막연하게 보이던 것들이 어떤 계기를 통해 흥미로워 보인다는 생각이 들기 시작하면 우리는 놀랄 만큼 몰두하고 빠져듭니다. 그리고 그렇게 또 한 단계 나의 내면을 확장합니다.
에필로그 P237
저자는 웹/HTTP/네트워크에 관해서
제대로 알지 못하는 초보에게 쉽게 알려주기 위한 방법에 몰두했으니라.
이렇게 쉽게 이해할 수 있는 책을 만들어준 저자의 노고에 감사를 전하고 싶다.
나의 내면의 확장을 위해 몰두하는 시간을 가져보아야겠다.