01장 네트워크 시작하기
1.1 네트워크 구성도 살펴보기
■ 네트워크
- 네트워크는 서비스 받는 입장과 서비스 제공하는 입장으로 나뉨
- 서비스 받는 입장: 집에서 인터넷 접속, 회사에서 업무할 때 등
- 서비스 제공하는 입장: 클라우드, 데이터 센터, 회사 기계실 서버 등
- 네트워크 접속 시 구성원 수, 필요한 네트워크 속도 등 상황 고려 필요
1.1.1 홈 네트워크
■ 홈 네트워크 구성도
▲ 그림 1-1. 네트워크 구성에 필요한 주요 요소들: 단말, 네트워크 장비, 케이블
- 홈 네트워크 구성 시 모뎀, 공유기 단말 간에 물리적 연결 필요
- 무선연결 예시: 무선 랜 카드, 무선 신호를 보낼 매체(공기)
- 유선연결 예시: 유선 랜 카드(이더넷 랜 카드: 일반적으로 보드에 내장), 랜 케이블(랜선)
1.1.2 데이터 센터 네트워크
- 안정적이고 빠른 대용량 서비스 제공을 목표로 구성
- 안정적인 서비스 제공을 위해 다양한 이중화 기술 사용, 높은 통신량을 수용 가능해야 함
- 위와 같은 조건을 만족하기 위해 10G, 25G, 40G, 100G, 400G와 같은 고속 이더넷 기술 사용
■ 데이터 센터 구성 변화
▲ 그림 1-2. 과거 데이터 센터 네트워크 구성(왼쪽)과 현재 데이터 네트워크 구성(오른쪽)의 변화
- 기존에는 3계층 구성이 일반적이었으나 스케일 아웃(Scale-OUt) 기반의 애플리케이션과 서비스의 등장으로 2계층 구성인 스파인-리프(Spine-Leaf) 구조로 변화됨
- 스케일 아웃(Scale-Out): 가상화 기술과 높은 대역폭을 요구함
- 스파인-리프(Spine-Leaf): 서버 간 통신이 늘어나는 최근 트래픽 경향을 지원하기 위해 제안됨
▲ 그림 1-3. 데이터 센터 네트워크 구성도: 스파인-리프 구조
- 최근 일반 서버에 10G Base-T 이더넷 포트가 기본적으로 제공되어 TOR(Top of Rack) 스위치와 연결되고 리프(Leaf) 스위치인 TOR 스위치는 스파일(Spine) 스위치와 40G, 100G로 연결되는 추세임
- 리프(Leaf) 스위치는 랙(Rack)에 장착되어 해당 랙의 서버 통신을 책임짐
- 더 높은 대역폭을 제공하기 위해 400G 네트워크도 표준화되어 데이터 센터에 사용되고 있음
1.2 프로토콜
- 규정, 규약과 관련된 내용을 언급할 때 프로토콜이라는 용어가 사용되는데, 네트워크에서 통신할 때의 규약 언급 시에도 사용됨
- 어떤 그룹이 만들었는지와 어떤 곳에서 사용하느냐에 따라 특징이 달라져서 다양한 형태로 존재했으나, 최근에는 이더넷-TCP/IP 기반 프로토콜로 변경되고 있음
- 물리적 측면: 데이터 전송 매체, 신호 규약, 회선 규격 등 이더넷이 널리 쓰임
- 논리적 측면: 장치들끼리 통신하기 위한 프로토콜 규격. TCP/IP가 널리 쓰임
- 네트워크 서비스가 처음 개발되었던 1900년대에는 적은 컴퓨팅 자원과 매우 느린 네트워크 속도를 이용해 최대한 효율적으로 통신하는 것이 목표였기 때문에 대부분의 프로토콜은 문자 기반이 아닌 최소한의 비트(2진수 bit) 기반으로 만들어짐
- 물론 애플리케이션 레벨의 프로토콜은 비트 기반이 아닌 문자 기반 프로토콜이 많이 사용되고 있음
- 대표적인 프로토콜: HTTP, SMTP
- 효율성은 비트 기반 프로토콜보다 떨어지지만 문자로 정의되어 있어 헤더 정의가 자유롭고 다양한 확장이 가능함
■ HTTP 프로토콜 헤더
▲ 그림 1-4. HTTP 프로토콜 헤더 예시
■ 프로토콜 스택
- TCP/IP, UDP, ICMP, ARP, HTTP, SMTP, FTP 등 애플리케이션 레이어 프로토콜 존재
- TCP/IP는 별도 계층에서 동작하는 프로토콜이지만 함께 사용하므로 프로토콜 묶음(스택)으로 부름
- 총 4개부분으로 나뉨
- 애플리케이션(Application) 계층: FTP, SSH, TELNET, DNS, SNMP
- 트랜스포트(Transport) 계층: TCP, UDP
- 네트워크(Network) 계층: ICMP, IP, ARP
- 데이터링크(Data Link) 계층, 피지컬(Physical) 계층: 이더넷(Ethernet)
1.3 OSI 7계층과 TCP/IP
▲ 그림 1-5. OSI 7계층과 TCP/IP
1.3.1 OSI 7계층
- 과거에는 통신용 규약이 표준화되지 않았고 각 벤더에서 별도로 개발했기 때문에 호환되지 않는 시스템이나 애플리케이션이 많고 통신이 불가능 했었음. 이를 하나의 규약으로 통합하려는 노력이 현재의 OSI 7계층임.
- 네트워크 동작을 나누어 이해하고 개발하는 데 많은 도움이 되므로 네트워크의 주요 레퍼런스 모델로 활용되고 있으나 현재는 대부분의 프로토콜이 TCP/IP 프로토콜 스택 기반으로 되어있음
- 표준화된 프로토콜 템플릿을 통해 네트워크 프로토콜을 전부 개발하는 대신 계층별로 프로토콜을 개발해 네트워크 구성 요소들을 모듈화할 수 있음. 모듈화된 요소는 기존에 개발된 프로토콜과 연동해 사용할 수 있음.
1.3.2 TCP/IP 프로토콜 스택
- 현대 네트워크의 대부분은 TCP/IP와 이더넷으로 이루어져 있음
- TCP/IP는 이론보다 실용성에 중점을 둔 프로토콜임
- OSI 레퍼런스 모델은 7계층, TCP/IP 모델은 4계층으로 구분
- OSI 7계층은 데이터 플로 계층과 애플리케이션 계층으로 구분
- 데이터 플로 계층: 데이터를 전달하는 부분
- 애플리케이션 계층: 데이터를 만드는 부분
- TCP/IP 4계층: 상위 3개 계층은 하나의 애플리케이션 계층, 1,2 계층은 하나의 네트워크 계층으로 구분함
- OSI 7계층과 TCP/IP 4계층은 애플리케이션 개발자가 고려해야 할 부분과 서버 엔지니어나 네트워크 엔지니어가 고려해야 할 부분으로 구분됨
✍ 회고
처음에 읽었을 때는 스케일 아웃과 스파인 리프 구조에 대한 내용의 글이 잘 이해가 되지 않았습니다. OSI 7계층과 TCP/IP는 네트워크에서 단골로 등장하는 내용입니다. 이 또한 머릿속으로 잘 정리가 되지 않았었는데, 손으로 직접 그림을 그려보고 다시 읽어보니 이해가 되었습니다. 다음 포스팅에서 좀 더 자세하게 다뤄보겠습니다. 이 책의 내용은 소프트웨어 개발자가 읽기에 쉽게 이해되는 책으로 추천해 드리고 싶습니다.
사담이지만 해당 글은 마크다운이 아닌 티스토리 블로그 기본모드로 작성한 것입니다. 마크다운으로 작성하고 싶었으나 모바일에서는 수정이 안 되는 이슈가 있어서 기본모드로 작성할 것 같습니다. 몇 날 며칠을 마크다운과 씨름했는데, 티스토리 블로그는 마크다운으로 작성하기 매우x3 열악한 환경입니다. 스터디 진행하면서 학습 및 정리한 내용을 포스팅 하려고 보니까 마크다운으로는 안 되겠습니다.
저작권에 어긋날 것 같아서 책에 나온 그림을 직접 아이패드로 그렸습니다. 양해 부탁드립니다.
🧸 참고사항
- 출처: 고재성, 이상훈, 『IT 엔지니어를 위한 네트워크 입문』, 길벗(2020)
- 본 내용은 학습을 위해 정리한 내용입니다.
- 해당 글 타래를 보고 싶다면 목차 - 도서 『IT 엔지니어를 위한 네트워크 입문』 요약 글을 참고해 주세요.
'Computer Science > Network' 카테고리의 다른 글
02장 네트워크 연결과 구성 요소 (0) | 2021.11.15 |
---|---|
01장 네트워크 시작하기 - 2 (0) | 2021.09.25 |
목차 - 도서 『IT 엔지니어를 위한 네트워크 입문』 요약 (0) | 2021.09.22 |
댓글