네트워크란 노드(node) 와 링크(link)가 서로 연결되어 있거나 연결되어 있지 않은 집합체를 의미한다.
여기서 노드란 서버, 라우터, 스위치 등 네트워크 장치를 의미하고
링크는 유선 또는 무선을 의미한다.
처리량이란 링크를 통해 전달되는 단위 시간당 데이터양을 말한다.
처리량은 사용자들이 많이 접속할 때마다 커지는 트래픽, 네트워크 장치 간의 대역폭,
네트워크 중간에 발생하는 에러, 장치의 하드웨어 스펙에 영향을 받는다.
지연 시간은 요청이 처리되는 시간을 말하며 어떤 메시지가 두 장치 사이를 왕복하는데 걸린 시간을 말한다.
지연 시간은 매체 타입(무선,유선), 패킷 크기, 라우터의 패킷 처리 시간에 영향을 받는다.
네트워크 토폴로지는 노드와 링크가 어떻게 배치되어 있는지에 대한 방식이자 연결 형태를 의미한다.
1. 트리 토폴로지
2. 버스 토폴로지
스푸핑이란?
LAN상에서 송신부의 패킷을 송신과 관련 없는 다른 호스트에 가지않도록 하는
스위칭 기능을 마비시키거나 속여서 특정 노드에 해당 패킷이 오도록 처리하는 것을 말한다.
3. 스타 토폴로지
4. 링형 토폴로지
5. 메시 토폴로지
병목현상이란?
전체 시스템의 성능이나 용량이 하나의 구성 요소로 인해 제한을 받는 현상
LAN
근거리 통신망을 의미하며 같은 건물이나 캠퍼스 같은 좁은 공간에서 운영되며,
전송 속도가 빠르고 혼잡하지 않다.
MAN
대도시 지역 네트워크를 나타내며 도시 같은 넓은 지역에서 운영되며,
전송 속도는 평균이며 LAN보다는 더 많이 혼잡하다.
WAN
광역 네트워크를 의미하며 국가 또는 대륙 같은 더 넓은 지역에서 운영되며,
전송 속도는 낮으면 MAN보다 더 혼잡하다.
TCP/IP OSI 7계층 그림
FTP, HTTP, SSH, SMTP, DNS 등 응용 프로그램이 사용되는 프로토콜 계층이며 웹 서비스, 이메일 등 서비스를 실질적으로 사람들에게 제공하는 층입니다.
송신자와 수신자를 연결하는 통신 서비스를 제공하며 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어를 제공하며, 애플리케이션과 인터넷 계층 사이의 데이터가 전달될 때 중계 역할을 한다.
대표적으로 TCP, UDP 등이 있다.
TCP란?
UDP란?
가상회선 패킷 교환 방식이란?
각 패킷에는 가상회선 식별자가 포함되며 모든 패킷을 전송하면 가상회선이 해제되고 패킷들은 전송된 순서대로 도착하는 방식을 말한다.
데이터그램 패킷 교환 방식이란?
패킷이 독립적으로 이동하며 최적의 경로를 선택하여 가는데, 하나의 메시지에서 분할된 여러 패킷은 서로 다른 경로로 전송될 수 있으며 도착한 순서가 다를 수 있는 방식을 뜻한다.
TCP는 신뢰성을 확보할 때 '3-way-handshake'라는 작업을 진행한다.
쓰리웨이 핸드셰이크 그림
1. SVN 단계
2. SVN + ACK 단계
3. ACK 단계
TCP가 연결을 해제할 때는 '4-way-handshake' 과정이 발생한다.
장치로부터 받은 네트워크 패킷을 IP 주소로 지정된 목적지로 전송하기 위해 사용되는 계층이다.
IP, ARP, ICMP 등이 있으며 패킷을 수신해야 할 상대의 주소를 지정하여 데이터를 전달한다.
상대방이 제대로 받았는지에 대해 보장하지 않는 비연결형적인 특징을 가지고 있다.
전선, 광섬유, 무선 등으로 실질적으로 데이터를 전달하며 장치 간에 신호를 주고받는 '규칙'을 정하는 계층이다.
네트워크 접근 계층이라고도 한다.
Q. OSI 7계층과 TCP/IP 4계층의 차이점은 무엇인가요?
A. TCP/IP 계층과 달리 OSI 계층은 애플리케이션 계층을 세 개로 쪼개고 링크 계층을 데이터 링크 계층, 물리 계층으로 나눠서 설명하는 것이 다르며, 인터넷 계층을 네트워크 계층으로 부른다는 점이 다르다.
Q. HTTP/2를 설명하고 장점 두 가지를 설명하세요.
A. HTTP/2는 HTTP/1.x보다 지연 시간을 중리고 응답 시간을 더 빠르게 할 수 있으며 멀티플렉싱, 헤더 압축, 서버 푸시, 요청의 우선순위 처리를 지원하는 프로토콜이다.
장점 두 가지로는 멀티플렉싱, 서버 푸시가 있다.
멀티플렉싱이란 여러 개의 스트림을 사용하여 송수신한다는 것이다. 이를 ㅌ오해 특정 스트림의 패킷이 손실되었다고 하더라도 해당 스트림에만 영향을 미치고 나머지 스트림은 멀쩡하게 동작할 수 있다.
서버 푸시란 HTTP/1.1에서는 클라이언트가 서버에 요청을 해야 파일을 다운로드 받을 수 있었다면, HTTP/2 클라이언트 요청 없이 서버가 바로 리소스를 푸시하는 것을 말한다. html에는 css나 js 파일이 포함되기 마련인데 html을 읽으면서 그 안에 들어있던 css 파일을 서버에서 푸시하여 클라이언트에 먼저 줄 수 있다.