OSI 7계층
국제 표준화 기구(ISO)에서 네트워크 통신이 이뤄지는 과정을 7단계로 나눈 네트워크 표준 모델
데이터 송신: 높은 계층에서 낮은 계층
데이터 수신: 낮은 계층에서 높은 계층
각 계층은 독립적이며 데이터를 송신할 때 각 계층에서 필요한 정보를 추가해 데이터 가공
=> 이때 제어 정보를 담은 헤더나 트레일러가 붙음 => 데이터 캡슐화
데이터 캡슐화를 하는 이유는?
수신부의 같은 계층에서 데이터 호환성을 높이고 오류의 영향을 최소화하기 위해서!
헤더는 데이터 앞에, 트레일러는 데이터 뒤에 붙는다.
송신부에서 데이터 캡슐화를 거친 결과물을 수신부로 보낸다.
수신부에서는 물리->응용 계층으로 올라가면서 데이터의 헤더와 트레일러를 분석하고 제거하는 역캡슐화 진행
이 과정에서 각 계층은 필요한 제어 정보를 Get
OSI 7계층의 전체 구조 및 역할
프로토콜
통신 규약, 데이터를 송수신하기 위해 정한 규칙
7계층(응용 계층): HTTP, FTP 등의 프로토콜을 응용 프로그램의 UI를 통해 제공
6계층(표현 계층): 데이터를 표준화된 형식으로 변경
5계층(세션 계층): 세션의 유지 및 해제 등 응용 프로그램 간 통신 제어와 동기화 진행
4계층(전송 계층): 신뢰성 있는 데이터를 전달하기 위함, TCP. UDP 같은 전송 방식과 포트 번호 등을 결정
3계층(네트워크 계층): 데이터를 송신부에서 수신부까지 보내기 위한 최적 경로를 선택하는 라우팅 수행. 최적 경로 == 라우트(route). 라우터(router)
2계층(데이터 링크 계층): 데이터 흐름 관리. 데이터 오류 검출 및 복구 등 수행. 브리지(bridge), 스위치(switch), 이더넷(ethernet)
1계층(물리 계층): 데이터를 비트 단위의 0과 1로 변환한 후, 장비를 사용해 전송하거나 전기 신호를 데이터로 복원. 리피터(repeater), 허브(hub) 등
TCP/IP 4계층
인터넷에서 데이터를 주고 받기 위한 네트워크 프로토콜
TCP(Transmission Control Protocol, 전송 제어 프로토콜)
데이터를 나눈 단위인 패킷의 전달 여부와 전송 순서를 보장하는 통신 방식
IP(Internet Protocol, 인터넷 프로토콜)
패킷을 빠르게 보내기 위한 통신 방식
TCP/IP 기반 프로토콜에는 대표적으로 HTTP가 있다!
TCP/IP에 맞춰 네트워크 통신 표준인 OSI 7계층을 단순화한 것이 TCP/IP 4계층이다.
TCP/IP 4계층에서 데이터 흐름과 각 계층의 역할
4계층(응용 계층): 사용자와 소프트웨어를 연결해 주는 계층. HTTP, HTTPS,DNS 등
3계층(전송 계층): 데이터의 신뢰성 보장, 포트 번호로 데이터를 적절한 응용 프로그램에 전달하는 역할. TCP, UDP 등의 프로토콜. 전송 계층의 데이터 단위 => 세그먼트
2계층(인터넷 계층): 데이터를 최종 목적지까지 도달할 수 있게 하는 계층. IP가 대표적. 인터넷 계층에서는 전송계층으로부터 받은 데이터에 헤더를 붙여 캡슐화 하는데, 이를 패킷 또는 데이터그램이라고 한다.
1계층(네트워크 인터페이스 계층): 네트워크 접근 계층. 데이터를 전기 신호로 변환하고 MAC 주소를 사용해 기기에 데이터 전달. 이더넷, Wi-Fi 등이 대표적
IP 주소
IP에서 컴퓨터 또는 네트워크 장치를 식별하기 위한 값.
IPv4 주소는 네트워크부와 호스트부로 나뉨
네트워크부는 해당 주소가 어떠한 네트워크에 속해 있는지 구분하는 값
호스트부는 해당 네트워크에서 어떠한 기기인지를 나타내는 값
서브넷 마스크
서브넷 마스크를 사용해서 네트워크부와 호스트부를 구분
IP와 동일한 구조
IP와 and 연산을 하면 IP 주소에서 네트워크부와 호스트부를 알아낼 수 있음!
+++
public IP, private IP, loopback IP
public IP
IP 주소는 임의로 우리가 부여하는 것이 아니라 전 세계적으로 ICANN이라는 기관이 국가별로 사용할 IP 대역을 관리하고, 우리나라는 한국인터넷진흥원(KISA)에서 국내 IP 주소들을 관리하고 있다.
이것을 ISP(Internet Service Provider의 약자로 KT, LG, SKT와 같이 인터넷을 제공하는 통신업체가 부여받고, 우리는 위 회사에 가입을 통해 IP를 제공받아 인터넷을 사용하게 되는 것이다. 이렇게 발급받은 IP를 공인 IP라고 한다.
공인 IP 주소가 외부에 공개되어 있어 인터넷이 연결된 다른 PC로부터의 접근이 가능하기 때문에 방화벽 등의 보안 프로그램을 설치할 필요가 있다.
private IP
공유기를 사용한 인터넷 접속 환경일 경우 공유기까지는 공인 IP 할당을 하지만, 공유기에 연결되어 있는 가정이나 회사의 각 네트워크 기기에는 사설 IP를 할당한다.
즉, 사설 IP는 어떤 네트워크 안에서만 내부적으로 사용되는 고유한 주소이다. 사설 IP는 보통 내 컴퓨터에서 사용하는 로컬 IP라고도 불리운다. 사설 IP는 전 세계적으로 고유할 필요가 없고, 여러 네트워크에서 동일한 사설 IP 주소 범위를 사용할 수 있다.
공인 IP는 전 세계에서 유일하지만, 사설 IP는 하나의 네트워크 안에서 유일하다. 공인 IP는 외부, 내부 상관없이 해당 IP에 접속할 수 있으나, 사설 IP는 내부에서만 접근이 가능하다.
대표적인 사설 IP 범위:
- 10.0.0.0 ~ 10.255.255.255
- 172.16.0.0 ~ 172.31.255.255
- 192.168.0.0 ~ 192.168.255.255
loopback IP
loopback IP는 자신의 장치에서 자신에게 통신을 할 때 사용되는 IP 주소입니다. 주로 네트워크 설정이나 테스트 목적으로 사용됩니다.
가장 일반적인 Loopback IP 주소는 127.0.0.1입니다.
이 주소는 장치가 자신의 네트워크 인터페이스와 직접적으로 통신하는 용도로 사용됩니다.
이 주소로 패킷을 보내면, 외부 네트워크로 나가지 않고 바로 해당 장치 내에서 처리됩니다.
'CS > 네트워크' 카테고리의 다른 글
[CS] 멱등성이란 무엇인가? (1) | 2024.10.16 |
---|