컴퓨터 네트워크란?
여러 대의 컴퓨터와 기기들이 서로 통신하여 데이터를 주고받을 수 있는 연결된 시스템을 말한다.
이때, 연결이란 물리적인 케이블 또는 무선으로 연결될 수 있으며, 데이터를 교환하는 대 사용되는 규칙과 프로토콜이 있다.
네트워크는 규모에 따라 분류할 수 있다.
LAN (Local Area Network)
집, 사무실, 학교 등 수 킬로미터 내의 가까운 거리에 있는 컴퓨터 및 각종 기기를 연결한 통신망
WAN (Wide Area Network)
멀리 있는 지역을 한데 묶은 네트워크, 가까운 지역끼리 묶은 LAN과 LAN을 하나로 묶은 통신망
MAN, VLAN, CAN, PAN, SAN 등이 있다.
현대 컴퓨터 네트워크의 데이터 전달
패킷 스위칭(packet switching) 기술을 기반으로 한다. 패킷 스위칭은 데이터를 작은 조각인 패킷(packet)으로 나누어 전송하고, 이러한 패킷들이 독립적으로 전송되며 목적지에서 다시 조립되는 방식이다. 이 방법은 데이터 전송을 효율적으로 처리하고, 여러 기기 간 데이터를 공유하는 데 있어서 중요한 역할을 한다.
1. 데이터 분할: 전송할 데이터를 패킷 단위로 분할하고 각 패킷은 고유한 패킷 헤더(Header)를 가지고 있으며, 이 헤더에는 출발지 주소, 목적지 주소, 패킷 순서 등의 정보가 담겨 있다.
2. 라우팅(Routing): 패킷이 전송될 경로를 결정하는 과정, 라우터들은 라우팅 테이블을 사용하여 패킷이 목적지에 도달하는 데 가장 적합한 경로를 찾아낸다.
3. 전송: 패킷은 라우터를 통해 목적지로 전송된다. 인터넷에서는 수많은 라우터들이 연결되어 긴 경로를 거쳐 패킷이 전송될 수 있다.
4. 패킷 조립: 목적지에 도착한 패킷들은 헤더 정보를 사용하여 올바른 순서로 조립된다. 모든 패킷이 도착하기를 기다릴 필요 없이 도착한 패킷은 즉시 조립 작업이 이루어진다.
라우터(Router)와 스위치(Switch)
라우터와 스위치는 네트워크에서 중요한 역할을 하는 두 가지 기기이다.
라우터는 네트워크간 데이터 전송을 관리하는 장치이다. 주로 WAN에서 사용되며, 인터넷과 같은 네트워크를 연결하는 데 사용한다.
스위치는 주로 LAN에서 사용되며, 컴퓨터들이나 다른 기기들이 네트워크에 연결되어 통신할 수 있도록 도와준다.
프로토콜이란? /프로토콜 스택이란?
프로토콜은 컴퓨터 네트워크에서 데이터를 주고받는 데 사용되는 규칙과 규약의 집합이다. 네트워크에서 기기들이 서로 통신하기 위해서는 특정한 규칙을 준수해야 하는데 이러한 규칙들이 모여서 프로토콜을 형성하게 된다. 이를 통해 데이터의 전송, 수신, 오류처리 등이 원활하게 이루어진다.
프로토콜 스택은 네트워크에서 데이터를 주고받을 때 사용되는 여러 프로토콜의 계층적인 구조를 의미한다. 주요한 프로토콜은 여러 개의 계층으로 나뉘어 있으며, 각 계층은 서로 상호작용하면서 데이터를 전송하고 처리한다.
일반적으로 프로토콜 스택은 OSI(Open Systems Interconnection) 7 계층계층 모델 또는 TCP/IP 4 계층계층 모델로 구성된다.
OSI(Open Systems Interconnection) 7 Layer란?
네트워크에서 데이터 통신을 구현하고 설명하기 위한 기본적인 프레임워크로 국제표준화기구(ISO)에서 개발된 모델이다. 7개의 서로 다른 계층으로 분리되어 있으며, 상위 계층은 하위 계층의 서비스를 이용하여 데이터를 전송한다.
7 Layer: 응용(Application)
사용자와 컴퓨터 간의 인터페이스를 담당하며, 여러 네트워크 응용 프로그램들과 상호작용함
6 Layer: 표현(Presentation)
데이터의 형식 변환, 암호화, 압축 등의 데이터를 애플리케이션에서 이해 가능한 형식으로 변환하는 작업을 수행
5 Layer: 세션(Session)
컴퓨터 간의 세션을 설정하고 관리하여 양 끝단 사이의 연결을 유지
세션(Session): 컴퓨터 간의 통신을 수립하고 유지하는 과정을 의미한다.
4 Layer: 전송(Transport)
데이터를 애플리케이션 계층과 신뢰성 있는 통신을 위한 세션 계층 사이에서 전송
3 Layer: 네트워크(Network)
패킷(Packet)을 이용하여 목적지까지의 경로를 설정하고 라우팅을 수행
2 Layer: 데이터 링크(DataLink)
물리적인 매체를 통해 신뢰성 있는 데이터 전송을 보장하기 위한 프레임(Frame) 단위로 데이터를 그룹화하고, 오류 검출과 복구 수행
1 Layer: 물리(Physical)
데이터를 전송하기 위한 물리적인 매체(케이블, 무선 등)와 하드웨어 적인 요소들에 대한 규격 정의
이미지 출처: https://www.linkedin.com/pulse/osi-model-explained-how-easily-remember-its-7-layers-rahul-jasrotia
TCP/IP란?
TCP/IP(Transmission Control Protocol/Internet Protocol)은 현대 인터넷과 네트워크 통신에서 가장 널리 사용되는 프로토콜 스택이다.
4 Layer: 응용(Application)
응용 프로그램들과 상호작용, 응용 프로토콜들이 이 계층에서 동작함
3 Layer: 전송(Transport)
TCP와 UDP프로토콜을 사용하여 데이터를 안정적으로 전송하고 흐름 제어, 혼잡 제어를 수행
TCP (전송 제어 프로토콜): 인터넷에서 신뢰성 있는 데이터 전송을 위한 프로토콜로, 전송 계층에 해당한다. 연결 지향적인 프로토콜로, 데이터의 순서를 보장하고, 손실된 패킷을 재전송하며, 중복 데이터를 제거하여 신뢰성을 보장한다.
UDP (사용자 데이터그램 프로토콜): TCP와 동일하게 전송 계층에 속하지만, 연결지향적이지 않은 프로토콜이다. 신뢰성보다는 빠른 데이터 전송을 중시하는 경우 사용한다.
2 Layer: 네트워크(Internet)
IP 프로토콜을 사용하여 IP주소를 할당하고 라우팅을 담당
IP (인터넷 프로토콜): 패킷 스위칭 네트워크에서 데이터를 주고받기 위한 프로토콜로, 네트워크 계층에 해당한다.
1 Layer: 네트워크 인터페이스(Network Interface)
물리적인 매체를 통한 데이터 전송과 물리적인 네트워크 다룸
이미지 출처: https://www.guru99.com/tcp-ip-model.html
OSI vs TCP/IP
OSI는 역할기반인 반면 TCP/IP는 프로토콜 기반에 가깝다. 즉 OSI는 논리적인 측면이 강하고, TCP/IP는 실무적인 느낌이 강하다.
이미지 출처: https://tgyun615.com/60
'Computer Network study' 카테고리의 다른 글
TCP (Transmission Control Protocol) (0) | 2023.08.10 |
---|---|
신뢰적 데이터 전송 (Sliding window, Go Back N, Selective Repeat) (0) | 2023.08.10 |
UDP & 신뢰적 데이터 전송의 원리 (0) | 2023.08.02 |
HTTPS & DNS (0) | 2023.08.02 |
HTTP 프로토콜 (0) | 2023.07.26 |