[책 리뷰] TCP/IP가 보이는 그림책

in #tcp6 years ago

TCP/IP가 보이는 그림책

<책 소개>

눈에 보이지 않는 네트워크를 그림으로 표현해서, 네트워크를 처음 접하는 사람도 쉽게 이해할 수 있도록 풀어 쓴 책이다. 네트워크, 프로토콜, TCP/IP에 대한 전반적인 소개로 시작으로 TCP/IP 각 층의 역할을 단원별로 소개해 두었다. 입문서와 같은 책이다 보니 다양한 내용이 소개되는 것에 비해 각 내용의 깊이가 부족하다고 느껴질 수 있지만, 이를 토대로 무엇을 더 공부하면 좋을지 방향을 잡아나갈 수 있다. 네이버 도서

<요약>

1. 네트워크/프로토콜

네트워크 란 정보를 주고받을 수 있는 환경을 뜻하며, 프로토콜은 네트워크 상에서 정보를 주고받기 위해 필요한 통신규약을 뜻한다. 인터넷에서 글이나 영상, 사진을 주고받을 때 이러한 정보를 전기 신호나 빛 신호로 변환하여 전달하는데 수신측에서 이를 어떻게 변환했는지 모른다면 원래 어떠한 파일이었는지 알 수 없다. 이처럼 일련의 정보 전달과정을 전 세계적인 약속으로 만들어 놓은 것이 TCP/IP라고 할 수 있다.

2. TCP/IP

정보 전달 과정을 단계별로 나누어 놓은 것이 OSI 7계층이고, 이를 좀 더 단순화시켜 놓은 것이 TCP/IP 5계층이다. TCP/IP라고 하면 트랜스포트층의 TCP와 네트워크 층의 IP를 가리키는 경우도 있지만, 일반적으로 TCP/IP라고 하면 5계층을 이루는 프로토콜 군을 뜻한다. 5계층을 줄여서 TCP/IP라고 하는 이유는 이 둘의 조합이 핵심이 되기 때문이다. 각 층별로 프로토콜을 골라 조합하면 목적에 맞는 통신을 할 수 있다. 책에서는 어플리케이션층, 트랜스포트층, 네트워크층, 데이터 링크 및 물리층으로 나누어 소개하고 있다.

3-1. 어플리케이션층

어플리케이션층은 사용자와 가장 가까운 층이며, 사용자가 원하는 서비스(웹, 전자 메일, 파일 업로드)를 통신과 연결하는 역할을 한다. 웹에 사용되는 HTTP, 메일 서비스에 사용되는 SMTP, POP3, 파일 서비스에 이용되는 FTP가 여기에 해당한다. 그 중 http는 한 번의 클라이언트 요청에 의한 서버의 응답으로 통신이 종료되기 때문에 이전 상태를 기억하기 위한 추가적인 장치가 필요하다. 예를 들어 인터넷에서 상품을 주문하고 결제를 할 때 어떤 상품을 골랐는지, 어떤 결제 수단을 선택했는지에 대한 정보를 가지고 있지 않다면 서버는 클라이언트에게 적합한 웹 페이지를 제공할 수 없기 때문이다. 이 때 사용되는 것이 Cookie, CGI 프로그램이다.

3-2. 트랜스포트층

트랜스포트 층은 송신처에서 전송한 정보를 수신처까지 전달하는 역할을 하며 어떻게 전달할 것인가에 따라 TCP 또는 UDP 프로토콜을 사용한다. TCP는 데이터를 수신처까지 확실히 전달해야 할 때, UDP는 인터넷 전화, 비디오 스트리밍처럼 신뢰성 보다는 속도가 우선시 될 때 사용된다. 트랜스포트층에서 다루는 데이터 단위를 세그먼트라고 하는데, 포트 번호를 보고 어플리케이션층의 어떤 프로토콜에 전달할지 판단한다 (예를 들어 http는 80, ftp는 20,21 ssh는 22). TCP는 데이터를 수신처까지 확실히 전달하기 위해 control flag를 사용하며, 수신처는 데이터를 잘 전달받았으면 송신처에 ACK=1을 보내고, 송신처는 ACK를 받지 못하면 데이터를 재전송한다.

3-3. 네트워크층

5계층에서 중간에 해당하는 네트워크층에는 IP 프로토콜만 존재한다. IP 프로토콜은 수신처를 설정하고 데이터를 어느 경로로 전달할 것인지 결정하며 수신처가 데이터를 잘 받았는지, 데이터가 손상되진 않았는지에 대해선 관여하지 않는다. 데이터에 IP 헤더를 붙인 것을 IP데이터그램이라고 하며 IP데이터그램을 받아 다음 목적지로 전송하는 역할을 하는 것이 라우터이다. IP주소는 집주소와 같은 역할을 하며 현재 통용되는 IPv4는 32바이트이다. IP주소는 네트워크부와 호스트부로 이루어져 있으며, 이 둘의 경계는 서브넷 마스크라는 값을 이용해서 나타낸다.

3-4. 데이터링크층과 물리층

데이터링크는 동일한 방법(동축케이블, 적외선 등)으로 연결된 기기의 모임을 데이터링크라고 하며 그 안에서 데이터를 어떻게 주고받을지 결정하는 것이 데이터링크 프로토콜이다. 비트열을 통신 매체에 맞는 신호(빛, 전압의 변화)로 바꾸어 물리층에 전달하며 이러한 신호는 NIC(네트워크 인터페이스 카드)를 통해 컴퓨터로 나가거나 들어온다. 네트워크 층에 IP주소가 있다면, 데이터링크 층에는 MAC 주소가 있는데, MAC주소는 NIC가 가지는 고유한 숫자를 뜻한다. 데이터링크층의 대표적인 프로토콜이 Ethernet이며, 네트워크 상에 모든 기기에 프레임을 보내서 해당하는 기기만 받는 방식으로 프레임을 주고받는다. 그 외에도 프레임을 주고받는 방식에 토큰 링 구조, FDDI 구조가 있다.

Sort:  

@syou, I gave you an upvote on your first post! Please give me a follow and I will give you a follow in return!

Please also take a moment to read this post regarding bad behavior on Steemit.

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.032
BTC 62971.67
ETH 3050.33
USDT 1.00
SBD 3.96