학회_공부해요/네트워크

#00. 네트워크 기본 개념 정리

yenas0 2024. 3. 26. 12:25
반응형

네트워킹의 기초

컴퓨터 네트워킹은 컴퓨터를 서로 연결하여 컴퓨터 간의 통신 및 데이터 교환을 가능하게 하는 방식.

일반적으로 컴퓨터 네트워크는 두 대 이상의 컴퓨터로 구성된 집합

 

컴퓨터 네트워크는 어떻게 작동하나?

컴퓨터 네트워크의 기본 구성 요소는 노드와 링크

노드: 모뎀, 라우터 등과 같은 데이터 통신을 위한 장비 또는 두 대 이상의 컴퓨터를 연결하는 것과 같은 데이터 터미널의 장비

링크: 전선이나 케이블 또는 무선 네트워크의 여유 공간으로 정의할 수 있다.

컴퓨터 네트워크의 작동은 컴퓨터 네트워크 통신을 허용하는 링크를 통해 데이터를 보내고 받는 데 도움이 되는 규칙 또는 프로토콜로 간단히 정의할 수 있다.

각 장치에는 장치를 식별하는 데 도움이 되는 IP 주소가 있다.

 

네트워크의 기본 용어

네트워크 네트워크는 통신 및 데이터 교환을 가능하게 하기 위해 함께 연결되는 컴퓨터 및 장치의 모음
노드 노드는 네트워크에 연결된 장치. 여기에는 컴퓨터, 서버, 프린터, 라우터, 스위치 및 기타 장치가 포함
프로토콜 프로토콜은 네트워크를 통해 데이터가 전송되는 방식을 제어하는 일련의규칙 및 표준.
ex) TCP/IP, HTTP 및 FTP 
토폴로지 네트워크에 있는 노드의 물리적, 논리적 배열. 버스, 스타, 링, 메시 및 트리가 포함됨
서비스 제공업체 네트워크  제공업체로부터 네트워크 용량 및 기능을 임대할 수 있는 권한을 부여. 무선 통신, 데이터매체 등이 포함 
IP 주소 IP 주소는 네트워크의 모든 장치에 할당되는 고유한 숫자 식별자. IP 주소는 장치를 식별하고 장치 간 통신을 활성화하는데 사용됨.
DNS 사람이 읽을 수 있는 도메인 이름을 컴퓨터가 이해할 수 있는 IP주소로 변환하는데 사용되는 프로토콜
방화벽 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는 데 사용되는 보안 장치. 무단 액세스 및 기타 보안 위혀으로부터 네트워크를 보호하는 데 사용

 

기업 컴퓨터 네트워크의 유형

LAN 근거리 통신망은 사무실이나 집과 같은 소규모 지역을 포괄하는 네트워크, 일반적으로 건물이나 캠퍼스 내의 컴퓨터와 기타장치를 연결하는데 사용됨
WAN 도시, 국가 또는 전 세계와 같은 넓은 지리적 영역을 포괄하는 네트워크.  LAN을 서로 연결하는데 사용되며 일반적으로 장거리 통신에 사용
클라우드 네트워크 공용 또는 사설 클라우드 서비스제공업체에서 호스팅할 수 있고 수요가 있는 경우 클라우드 네트워크를 사용할 수 있으므로 WAN으로 시각화할 수 있음. 가상 라우터, 방화벽 등으로 구성됨 

 

컴퓨터 네트워크 아키텍처의 유형

클라이언트-서버 아키텍처 노드가 서버 도는 클라이언트가 될 수 있는 컴퓨터 네트워크 아키텍처의 한 유형. 여기서 서버 노드는 클라이언트 노드 동작을 관리할 수 있음
Peer-to-Peer 아키텍처 P2P 아키텍처에는 중앙서버라는 개념이 없음. 각 장치는 클라이언트 또는 서버로작동하는 데 무료임.  

 

 

OSI 모델

: OSI는 개방형 시스템 상호 연결을 의미. 통신 프로토콜의 표준과 각 계층의 기능을 지정하는 참조 모델. OSI의 각 계층에는 서로 다른 기능이 있으며 각 계층은 서로 다른 프로토콜을 따라야 함.

sender가 reciever한테 data를 보낼 때 packet으로 조각조각 내서 보내는데 각각의 계층에 맞는 데이터를 보냄

layer 이름 특징 정보양식 장치 or 프로토콜
application 최상위 계층. 네트워크를 통해 전송되어야하는 데이터를 생성 메시지 SMTP
presentation application layer의 데이터는 여기서 추출되어 네트워크를 통해 전송하는 데 핖요한 형식에 따라 조작됨 메시지 JPEG, MPEG, GIF
session 연결 설정, 세션 유지 및 인증 담당. 보안 보장 메시지 게이트웨이
transport application layer에 서비스를 제공하고 network layer에서 서비스를 가져옴. transport layer의 데이터는 segment라고 한다. 완전한 메시지의 end to end 전달을 담당하며 성공적인 데이터 전송에 대한 승인을 제공하고 오류 발생 시 데이터를 다시 전송함. 분절 방화벽
network 한 호스트에서 다른 네트워크에 있는 다른 호스트로 데이터를 전송. 패킷 라우터
data link 메시지의 노드 간 전달을 담당. 주요 기능은 physical layer를 통해 한 노드에서 다른 노드로의 데이터 전송에 오류가 없는지 확인. packet이 network에 도착 시 MAC주소를 사용해 host에 packet을 전송  액자 스위치, 브리지
physical 가장 낮은 계층, 장치 간의 실제물리적 연결 담당. 비트 형태의 정보를 포함. 한 노드에서 다음 노트로 개별 비트 전송. 데이터 수신 시 수신된 신호를 가져와 0과 1로 변환 후 데이터 링크 계층으로 보내 프레임 다시 결함  비트 허브, 중계기, 모뎀, 케이블

 

 

TCP/IP 모델

- 표준 프로토콜을 기반으로 함. 이는 전송 제어 프로토콜/인터넷 프로토콜을 의미

- layer는 5개 또는 4개로 지칭

- 주요 작업: 컴퓨터의 데이터를 한 장치에서 다른 장치로 전송

- 수신자가 발신자가 보낸 것과 동일한 정보를 수신할 수 있도록 데이터를 신뢰할 수 있고 정확하게 만드는 것.

- 송신자 측에서 데이터를 패킷으로 나누고 수신자 측에서는 동일한 패킷을 결합하여 데이터를 구성

 

 

TCP와 IP의 차이점

데이터 전송에서 차이점을 보임 (IP는 메일의 목적지 찾음. TCP는 메일을 보내고 받는 일)

application OSI의 tansport layer와 유사. end-to-end통신과 오류 없는 데이터 전달을 담당.
transport 데이터 수신 확인을 교환하고 누락된 packet을 재전송하여 packet이 오류 없이 순서대로 도착하는지 확인
internet OSI의 network layer와 유사. 전체 네트워크를 통한 데이터의 논리적 전송을 담당하는 프로토콜.
data link 패킷의 네트워크 프로토콜 유형은 링크 계층에 의해 식별됨.
physical 네트워크 통신이 필요한 애플리케이션 그룹. 데이터를 생성하고 연결을 요청하는 담당

 

 

TCP/IP와 OSI의 차이점

TCP/IP OSI
전송 제어 프로토콜 개방형 시스템 상호 연결
애플리케이션 레이어 자체에서 세션과 프레젠테이션 계층 모두 사용 다양한 세션 및 프레젠테이션 계층 사용
연결 없는 수평적 접근 방식 수직적 접근 방식
전송 계층은 패킷전달 보장 안함 전송 계층은 패킷 전달 보장
프로토콜을 쉽게 교체 불가 프로토콜 더 잘 이루어지며 기술의 변화로 쉽게 교체 가능
네트워크 계층에서 비연결(IP) 서비스만 제공. transport 계층은 연결제공  비연결 및 연결 지향 서비스는 OSI 모델의 network layer에서 제공됨

 

 

DNS?

인터넷의 전화번호부. 브라우저가 인터넷 리소스를 로드할 수 있도록 도메인 이름을 IP 주소로 변환

웹페이지 로딩에 관련된 4개의 DNS 서버

DNS 리커서 웹 브라우저와 같은 애플리케이션을 통해 클라이언트 시스템으로부터 쿼리를 수신하도록 설계된 서버.
루트 네임서버 사람이 읽을 수 있는 호스트 이름을 IP 주소로 변환하는 첫 번째 단계
TLD 네임서버 특정 IP 주소 검색의 다음 단계, 호스트 이름의 마지막 부분을 호스팅한다.
권위 있는 네임서버 네임서버 쿼리의 마지막 중지 지점. 요청된 레코드에 액세스할 수 있는 경우 요청된 호스트 이름의 IP 주소를 초기 요청을 수행한 DNS Recursor에게 다시 반환

 

 

DNS 캐싱

DNS는 8단계로 구성되는데 이를 단축하기 위해서 캐싱. 요청 클라이언트에 더 가까운 곳에 데이터를 저장하여 DNS 쿼리를 더 일찍 해결할 수 있고 DNS 조회 체인 아래에 있는 추가 쿼리를 방지하여 로드 시간을 개선하고 대역폭/CPU 소비를 줄일 수 있음.

 

 

HTTP?

하이퍼텍스트 전송 프로토콜은 월드 와이드 웹의 토대이며 하이퍼텍스트 링크를 사용하여 웹 페이지를 로드하는 데 사용. HTTP는 네트워크 장치 간에 정보를 전송하도록 설계된 애플리케이션 계층 프로토콜이며 네트워크 프로토콜 스택의 다른 계층 위에서 실행.

HTTP요청에는 HTTP 버전 유형, URL, HTTP 메서드, HTTP 헤더 요청, HTTP 본문이 포함된다.

 

 

SSL(Secure Sockets Layer)?

암호화 기반 인터넷 보안 프로토콜. TLS 암호화의 전신

누군가가 데이터를 탈취해도 암호화되어 알아볼 수 없도록 함.

(핸드셰이크란 암호화를 사용하는 통신 세션을 실행하는 프로세스)

 

 

Websocket

http의 경우 클라이언트 서버에 HTTP 요청을 보내면 클라이언트 서버 사이에 TCP 연결이 열리고, 응답을 받은 후 TCP연결이 종료되고, 각 HTTP 요청은 서버에 대한 별도의 TCP연결을 연다.

websocket은 양방향 전이중 프로토콜. 연결이 설정되고 종료될 때까지 동일한 연결 채널을 사용하여 통신이 이루어짐. (채팅, 카톡 노션 등등.. 실시간 채팅 기능같은데에서 많이 씀)

websocket HTTP
WebSocket은 설정된 열결 채널을 재사용하여 클라이언트에서 서버로 또는 서버에서 클라이언트로 데이터를 보낼 수 있는 양방향 프로토콜. 연결은클아이언트나 서버에 의해 종료될 때까지 유지  HTTP 프로토콜은 연결 지향 전송 계층 프로토콜인 TCP 프로토콜 위에서 작동하는 단방향 프로토콜. HTTP연결이 닫히면 응답을 받은 후 HTPP 요청 방법을 사용해 연결 생성 가능
서비스와 같은 거의 모든 실시간 애플리케이션은 WebSocket을 사용하여 단일 통신 채널에서 데이터를 수신 간단한 RESTful 애플리케이션은 상태 비저장 HTTP 프로토콜을 사용함
자주 업데이트되는 모든 애플리케이션은 HTTP 연결보다 빠르기 때문에 WebSocket을 사용 특정 시간 동안 연결을 유지하고 싶지 않거나 데이터 전송을 위해 연결을 재사용하고 싶지 않은 경우 HTTP 연결을 Websocket보다 느림

 

반응형

'학회_공부해요 > 네트워크' 카테고리의 다른 글

#5. 네트워크 운용기기  (0) 2024.05.22
#4. NOS(Network Operating System)_2  (0) 2024.05.14
#3. NOS(Network Operating System)  (0) 2024.05.07
#02. TCP/IP  (0) 2024.04.02
#01. 네트워크 일반  (0) 2024.03.26