본문 바로가기
공부/네트워크

네트워크 공부 - OSI 모델과 TCP/IP 프로토콜

by 라이티아 2024. 10. 18.

목표

1. 데이터 통신과 네트워크, 계층 간의 상호 관계에서 다중 계층 구조에 대한 개념을 알게된다. 데이터 통신과 네트워크, 계층 간의 상호 관계에서 다중 계층 구조에 대한 개념을 알게된다

2. OSI 모델과 계층 구조, 계층 간의 인터페이스를 알게 된다

3. OSI 모델에서 각 계층의 기능을 알게 된다

4. TCP/IP를 소개하고, .TCP/IP 계층과 OSI 모델에서 해당 계층을 비교할 수 있다

5. 몇 가지 예를 통해 TCP/IP 프로토콜의 각 계층의 기능을 알게 된다

6. 발신자에서 목적지까지 메시지 전달을 위한 TCP/IP 프로토콜의 일부 계층에서 사용하는 주소지정 메커니즘을 알게 된다

 

순서

프로토콜 계층구조

OSI 기본 참조 모델

TCP/IP 프로토콜

주소지정

 

 

키워드

패킷 packet

- 네트워크에 접속되어 있는 컴퓨터끼리 통신을 통하여 주고받는 데이터 단위

 

통신규약 protocol

- 통신에 대한 전체 모델을 이해하기 위해서는 OSI(open system interconnection) 모델과 TCP/IP(transmission control protocol / internet protocol)모델 이해 필수

- 복잡한 임무를 여러 개의 계층구조로 나눔

ㄴ 각 계층(layer)은 각기 프로토콜을 가짐

 

 

프로토콜 계층 구조

계층 구조

- 두 개체가 서로 통신할 때는 프로토콜 필요

- 통신이 복잡하면 임무를 여러 개의 계층 구조로 나눔

 

서비스

- 각 계층은 자신의 아래 계층의 서비스를 이용

 

 

OSI 기본 참조 모델

- open system interconnection basic reference model - ISO 7498-1

- ISO에서 제정한 개방 시스템 상호연결 모델

- 1970년 후반에 처음 소개

- 모든 유형의 컴퓨터 시스템 간의 통신을 허용하는 네트워크 시스템을 설계하기 위한 계층 구조를 갖는 모델

- 서로 연관된 7개의 계층으로 구성

- 컴퓨터 네트워크를 이해하는데 필요한 기본 지식 제공

 

 

Layer 1 - Physical 물리

매체를 통해서 비트를 전달

Layer 2 - Data link 데이터 링크

홉 대 홉 전달을 제공하기 위해 비트를 프레임으로 구성

Layer 3 - Network 네트워크

네트워크 간 연결 제공 : 패킷을 발신지에서 목적지까지 전달

Layer 4 - Transport 전송

신뢰성 있는 프로세스 대 프로세스 메시지 전달과 오류 복구 제공

Layer 5 - Session 세션

세션 설정, 관리, 종료

Layer 6 - Presentation 표현

데이터 변환, 암호화, 압축

Layer 7 - Application 응용

네트워크 자원 접속 제공

 

 

Layer to Layer communication 계층 대 계층 통신

- 계층간 인터페이스

ㄴ 자신의 바로 위 계층에 저공되는 정보와 서비스를 정의

ㄴ 모듈식 : 인터페이스만 맞춘다면 각 계층은 독립적 설계 가능

 

- 계층의 기본 구조

Layer 1, 2, 3(네트워크 지원 계층)

하나의 장치에서 다른 장치로 전송되는 데이터의 물리적인 면을 처리

 

Layer 5, 6, 7(사용자 지원 계층)

관련 없는 소프트웨어 시스템간의 상호 운용성 제공

 

Layer 4(전송 계층)

네트워크 지원 계층과 사용자 지원 계층을 서로 연결하고, 네트워크 지원 계층이 전송한 것을 사용자 지원 계층이 사용할 수 있는 형태가 되도록 보장

 

OSI 모델의 계층

A 데이터 링크층(Data link layer)

- 물리층의 전송 설비를 신뢰할 수 있는 링크로 변환

 

주요 기능

프레임 구성

물리 주소 지정(송수진자 주소)

흐름 제어

=> 단일 링크 (홉 대 홉)

오류 제어

=> 단일 링크 : 손실 / 중복 프레임 인식

접근 제어

=> 동일 링크 연결 상황, 주어진 시간에 어느 장치가 제어권을 갖을지 결정

 

 

B 네트워크층(Network layer)

- 패킷을 네트워크를 통하여 발신지에서 목적지까지 전달 책임(IP)

ㄴ 개별 패킷 간의 관계인식은 못 함

 

주요기능

논리주소 지정

경로지정

=> 패킷이 최종 목적지에 전달될 수 있도록 경로를 지정하거나 교환 기능 제공

 

 

C 전송층(Transport layer)

- 전체 메시지의 프로세스 대 프로세스 전달 책임

 

주요기능

서비스 지점 주소지정(포트 주소)

분할과 재조립

연결 제어 => 연결형, 비연결혈(udp tcp)

흐름 제어 => 종단 대 종단

오류 제어 => 프로세스 대 프로세스

 

 

D 세션층(Session layer)

- 네트워크 대화 제어기로서 통신 시스템간 상호 대화 설정, 유지, 동기화 책임

 

주요기능

대화 제어(반이중, 전이중)

동기화(확인점 추가)

 

 

E 표현층(Presentation layer)

- 두 시스템간에 교환되는 정보의 구문과 의미와 관련 

 

주요기능

변환

암호화

압축

 

 

F 응용층(Application layer)

- 사용자나 소프트웨어를 네트워크에 접근 가능하도록 하는 기능

 

주요기능

네트워크 가상 터미널

파일 전송, 접근, 관리

전자우편 서비스

디렉토리 서비스 : 접근 서비스

 

 

 

TCP/IP 프로토콜

OSI보다 먼저 개발

계층 구조는 OSI 모델과 정확하게 일치하지 않음

물리층, 데이터링크층, 네트워크층, 전송층 응용층으로 구성

 

Layer 1 - 물리층_______________

Layer 2 - 데이터 링크층--------------- >  현재 사용중인 Lan이나 Wan기술

Layer 3 - 네트워크층 IGMP, ICMP, IP, ARP 

Layer 4 - 전송층 SCTP, TCP, UDP

Layer 5 - 응용층 SMTP, FTP, TFTP, DNS, SNMP ..... DHCP

 

OSI와의 비교

 

Physical ~ Transport 까지는 동일

OSI의 session, presentation, application 층이 TCP/IP에서는 Application으로 통합됨

 

 

7 Layer vs 5 Layers

추상화 수준의 차이

TCP / IP 모델은 실제 인터넷에서 사용되는 프로토콜

- OSI 모델은 이론이 보다 부각된 모델로서 각 계층을 세분화 하여 다양한 기능을 명확히 구분

- 반면 TCP / IP는 세션 계층과 프레젠테이션 계층을 따로 나누지 않고 응용 계층으로 통합하여, 실질적인 네트워크 통신에서 자주 사용되지 않는 계층을 단순화

 

목표차이

OSI 모델은 통신 시스템을 이상적으로 나누어 각 계층이 어떻게 상호작용 해야 하는지는 설명하는데 중점

TCP / IP 모델은 실제로 구현 가능한 프로토콜 스택을 기반으로 설계

 결과적으로, TCP / IP는 실용적인 구현을 위해 단순화된 반면, OSI는 더 세부적으로 기능을 분리한 모델

 

 

TCP / IP 프로토콜 예시 시나리오

TCP / IP 프로토콜의 계층들

링크(link)라는 여러개의 작은 네트워크로 구성

링크는 근거리 통신망(lan)또는 광역 통신망(wan)

링크는 라우터나 교환기로 서로 연결

 

TCP / IP 프로토콜

물리층 통신

통신 단위는 비트(bit)

 

데이터 링크층 통신

특정 프로토콜 규저하지 않음, 통신은 두 홉간

통신 단위는 프레임(frame)

 

네트워크층

통신 단위는 데이터그램(datagram)

호스트 대 호스트

다음 프로토콜을 포함

ㄴ Internet protocol - 인터넷 프로토콜 : 신뢰성 없는 비연결성

ㄴ ARP(Address Resolution Protocol) - 주소변환 프로토콜 : 노드의 물리적 주소 찾을때 사용 

ㄴ ICMP(Internet Control Message Protocol) - 인터넷 제어 메시지 프로토콜 : 데이터그램의 문제발생을 알리는 메커니즘

ㄴ IGMP(Internet Control Message Protocol) - 인터넷 그룹 메시지 프로토콜 : 멀티케스트 그룹 관리용, 주로 실시간 스트리밍, 온라인 비디오, 라이브 방송과 같은 서비스에서 사용

 

네트워크층 : 종단 - 대 - 종단

링크층 / 물리층 : 노드 - 대 - 노드

 

전송층

통신 단위는 세그니먼트, 패킷

프로세스 대 프로세스

다음 프로토콜 포함

ㄴ TCP (연결형 서비스)

ㄴ UCP (비연결형 서비스)

ㄴ SCTP - 스트림 제어 전송 프로토콜 (UDP, TCP의 장점을 결합한 전송 제어 프로토콜) 

 

응용층

통신 단위는 메시지

OSI 모델의 세션, 표현, 응용층을 합친것

ㄴ 종단 사용자 소프트웨어 통해 직접 활용

NFS, SNMP, DNS, HTTP, FTP 등등

 

 

주소지정

3개의 계층에서 사용되는 주소

물리 주소

논리 주소

포트 주소

응용 - 특수 주소

 

bit 물리층

frame 데이터 링크층 - 물리 주소

datagram 네트워크층 - 논리 주소

segment 전송층 - 포트 주소

message 응용층 - 응용 - 특수 주소

 

물리 주소

링크주소

wan이나 lan에서 정의된 노드의 주소

이더넷 네트워크 인터페이스 카드(nic)의 6byte 주소

유니캐스트, 멀티캐스트, 브로드캐스트

 

물리주소 주소지정

유니캐스트 : 단일 사용자 수신

멀티캐스트 : 그룹 사용자 수신

브로드캐스트 : 네트워크의 모든 시스템이 수신

 

논리 주소

인터넷 주소, IP주소

현재 인터넷에 연결된 호스트 식별

IPv4 주소 공간 (2^32, 40억 이상)

 

포트 주소

컴퓨터는 다수의 프로세스를 동시에 실행함

한 프로세스가 다른 프로세스와 통신을 함

프로세스를 식별하는 주소(16bit)

 

응용-지정 주소

특정 응용을 위해 설계된 주소

전자우편 주소 AAAA@QWERT.com

URL(Unifrom Resource Locator) www.google.com