운영체제(OS) & Network

OSI 7 Layer의 기능 및 TCP/IP

jih0ssang 2023. 9. 18. 16:56

학습 목표

1. OSI 7 Layer를 나눈 목적을 이해해보자.

2. 계층별 기능과 사용하는 장비, 프로토콜, PDU에 대해 알아보자.

3. 캡슐화와 캡슐화 해제에 대해 자세히 알아보자.


OSI 7 Layer Model

OSI=Operating System Interconnection

 

ISO(International Oragnization for Standardization, 국제표준기구)

네트워크를 7계층으로 나눈 것입니다.

굳이 계층별로 나누는 이유는 무엇일까요?

 

계층별로 나누면 참 편리합니다.

문제가 발생했을 경우, 어떤 계층까지는 정상적으로 동작하지만,

특정 계층 이후부터 동작하지 않는다면

어디서 문제가 발생했는지 쉽게 찾을 수 있습니다.

 

그리고 가장 중요한 목적인 ‘호환성’때문입니다.

외국에 여행을 갔을 때 내 휴대폰이 동작이 안되면 안되겠죠?

다른 나라, 회사와의 호환성을 위해

OSI 7 Layer Model은 모두가 정해놓은 규칙입니다.

 

 

1계층~7계층

물데네전세표응 순서입니다.

 

PDU=protocol Data Unit, 데이터 단위.

계층별로 데이터를 부르는 용어가 다르다. 하지만 데이터를 가리키는 것은 마찬가지이다.

 

 

 

 

 

OSI 7계층 구조

OSI 7계층 주요 내용 주요 프로토콜(매체) 데이터 단위
7. Application •사용자가 네트워크를 통해 소프트웨어에 접근
•사용자에게 최종 서비스를 제공
•FTP, SNMP, HTTP, Mail
•ALB(Application LoadBalancer)
Data
6. Presentation •데이터 인코딩 및 디코딩, 암호화
•그림 및 텍스트를 데이터 변환(컴퓨터가 이해하는 언어로)
•암호, 코드 변환
•GIF, ASCII
Data
5. Session •세션 연결 및 동기화 수행, 통신 방식 결정 •반이중, 전이중, 완전이중 Data
4. Transport •두 개의 종단간 End-to-End 데이터 흐름이 가능하도록 논리적 주소 연결
•신뢰도, 오류탐지 및 교정 기능 제공
다중화(Multiplexing) 발생
•TCP, UDP
•Network LoadBalancer
•Telnet

Segment
3. Network •경로 선택, 라우팅 수행
•네트워크에서 노드에 전송되는 패킷 흐름을 통제하고 상태 메시지가 네트워크 상 어떻게 전송되는 가 
•IP, ICMP, IGMP, ARP, RARP
•라우팅 프로토콜(RIP, OSPF, BGP)
Packet
2. Data Link •물리주소 결정, 에러 제어, 흐름 제어, 데이터 전송
•흐름 제어, 오류 제어
•브리지, PPTP
Frame
1. Physical •실제 Data Bit 전송
•전기적 신호, 케이블, 인터페이스 등을 구성
•동축케이블, 광섬유, Twisted Pair cable Bit

 

* TCP는 Connection이 아닌, Connection Oriented (연결 지향) 방식이다.

연결되어있지는 않지만, 연결된 것 처럼 착각하게 만드는 것이다.

 

Switch와 Router의 차이

Switch
• 2계층(Data Link)에서 동작
MAC 주소를 기반으로 프레임을 전달
• MAC Address 기반 MAC Address 테이블 보유
• 동일한 네트워크 장치들 간 데이터 전달

Router
• 3계층(Network)에서 동작
IP 주소를 기반으로 패킷을 전달
• IP Address 기반 라우팅 테이블 보유
• 다른 네트워크 장치들 간 데이터 전달

 

 

 

L1. 물리 계층(Physical Layer)

- 기능:[Data-link Layer]로부터 전달된 Frame을 0과 1의 bit열로 변환하여 전송 매체를 통해 data를 전송합니다.

- 장비: 통신케이블(TP, 동축케이블, 광케이블), repeater(증폭기), Hub(허브), 커넥터, 트랜시버 등

- PDU: bit(비트)

 

repeater는 신호를 크게 보내는 것이 아니라, 멀리 보내게 해주는 장비입니다.

지금은 Hub(허브)를 더 많이 사용합니다.

Hub는 1계층 장비여서 mac주소나 ip주소를 읽을 수 없습니다.

그래서 패킷들을 구분하지 못하고 단순히 전달하는 배달부 역할만 수행하기 때문에

2개 이상의 포트에서 동시에 신호가 들어올 경우, 충돌이 납니다.

즉, Hub는 항상 Collision Domain(충돌 영역)에 속해있습니다.

 

이를 방지하기 위해서는 CSMA/CD가 사용됩니다.

CSMA/CD=Carrier Sense Multi Access/Collision Detection  신호 감지 다중접근/충돌 감지

나 이외의 누군가가 허브에 접근하는지 신호를 감지한다. 는 것을 의미합니다.

 

L2. 데이터 링크 계층(Data Link Layer)

- 기능: [Physical Layer]를 통해 송/수신되는 정보의 오류와 흐름을 관리하여,

안전한 정보의 전달을 수행할 수 있도록 도와줍니다.

- ethernet header : mac address의 src/dst + TTL(time to live) + checksum(오류체크)

- 장비: switch, bridge

- PDU: Frame

- protocol : LAN – ethernet, token-ring, token-bus, FDDI 등

               WAN – SLIP, PPP, Frame,relay, ATM 등

 

bridge의 등장배경은 Hub가 가지고 있는 Collision 문제가 커지면서

Collision Domain 영역을 나누기 위해서 등장하였습니다.

지금은 bridge보다 switch를 많이 사용합니다.

switch는 이더넷의 mac주소를 보고 mac address table을 스스로 만들어 참조하여 데이터를 전달합니다.

 

FDDI = Fiber Distribution Data Interface

SLIP = Serial Line internet protocol

PPP = Point to Point protocol

 

 

L3. 네트워크 계층(Network Layer)

- 기능: data(packet)를 목적지까지 가장 안전하고 빠른 경로와 주소를 정하여 전달해줍니다.

- IP header : IP address의 src/dst

- 장비: L3 switch, Router(라우터)

- PDU: packet(패킷)

- protocol: IPv4, IPv6, IPX, ICMP, IGMP, 라우팅 프로토콜(RIP/EIGRP, OSPF, IS-IS, BGP, ARP, RARP)

 

router는 IP header의 IP address를 보고 ip routing table를 참조하여 데이터를 전달합니다.

여기서 ip routing table은 스스로 만들지 않고엔지니어가 만들어줍니다.

 

ICMP=Internet Control Message Protocol

IGMP=Internet Group Management Protocol

RIP=Routing Protocol

EIGRP=Enhanced Interior Gateway Routing Protocol

OSPF=Open shortest Path First

IS-IS=Interior gateway protocol, link-state routing protocol

BGP=Border Gateway Protocol (전세계 네트워크는 BGP로 연결)

ARP=Address Resolution Protocol

RARP=Reverse ARP

 

 

L4. 전송 계층(Transport Layer)

- 기능: 전체 메시지의 종단(End-to-End)간 전달, 흐름 제어 및 오류 제어 기능을 수행합니다.

- Port Number : src/dst port number  

- 장비: L4 switch, Load balancer 

- PDU: segment(세그먼트)

- protocol: UDP(신속), TCP(정확)

 

switch는 UDP/TCP의 port number로 session을 구분하여 session table을 만듭니다.

전송 계층의 모든 것은 Load balancing(데이터 분산처리)을 위함입니다.

Load balancing은 과부하를 방지하기 위해 데이터를 분산 처리하는 방식입니다.

예를 들어 서버 2개로 번갈아 처리하면 → load balance, 가용성 ↑ 

고로, 서버 2개를 왔다갔다 해줄 L4 switch 장비가 필요합니다.

            web1(http)

            web2(http)  --------- L4 switch <---(서비스 요청) ----고객

 

 

L5. 세션 계층(Session Layer)

- 기능: 송/수신 host상에서 실행되고 있는 응용 프로그램 간의 session의 확립과 유지 작업 완료 후

종료 역할을 수행합니다.

- 장비: L5 switch

- PDU: Data

 

L6. 표현 계층(Presentation Layer)

- 기능: 사용자가 입력한 data를 network를 통해 전송 가능한 형태의 data로 변환하는 기능을 담당합니다.

Data의 압축과 암호화 기능도 제공합니다.

- 장비: L6 switch

- PDU: Data

 

L7. 응용 계층(Application Layer)

- 기능: 사용자가 직접 사용하는 program(e-mail, web browser, file transfer program 등)들이 동작하는 계층입니다.

- 장비: L7 switch, 웹 방화벽, 메일 방화벽

- PDU: Data

- protocol: 웹 - HTTP,HTTPS         메일 - SMTP(송신), POP3(수신), IMAP

               로그 - syslog, SNMP   원격접속 - telnet(요즘사용x, 암호화x), SSH(주로사용, 암호화o)

IMAP=Internet Message Access Protocol

SNMP=Simple Network Management Protocol

 

Encapsulation(캡슐화)

 

아래 Bits부터 DATA까지 L1~L7 순서입니다. &amp;amp;amp;amp;amp;nbsp;

 

송신할 때는 캡슐화가 진행이 되며, 위에서 아래로 진행이 됩니다.

각 계층별로 헤더가 붙어서 내려옵니다.

L2계층에서 붙는 LF(Footer, trailer)는 데이터에 이상이 없는지 오류 확인을 합니다.

이렇게 계층별로 헤더를 붙여서 L1계층으로 내려오면

데이터에서 신호(2진수, Bits)로 변환이 되어, 전송됩니다.

 

Decapsulation(캡슐화 해제)

수신할 때는 캡슐화 해제가 진행되며, 아래에서 위로 진행이 됩니다.

각 계층별로 헤더를 풀어서 읽습니다.

이렇게 계층별로 헤더를 풀어서 L7계층까지 올라오면

데이터가 성공적으로 수신된 것입니다.

 

 

TCP/IP 구조

OSI 7계층 TCP/IP 4계층 주요 기능
Application Application •네트워크를 실제 사용하는 응용 프로그램으로 구성
•FTP, SMTP 등이 있음
Presentation
Session
Transport Transport •도착하고자 하는 시스템까지 데이터를 전송
•Port를 가지고 있으며, 프로세스 연결 또는 비연결해서 통신함
•TCP, UDP

Network Internet •Datagram을 정의하고 routing하는 일을 담당 
•IP, ARP, RARP, ICMP, IGMP
Data Link Network Access 케이블, 송수신기, 링크 프로토콜, LAN 접속과 같은 물리적 연결 구성 정의
Physical

 

TCP(Transport connection Protocol)
• 연결 지향 프로토콜로, 사용자에게 신뢰성 있는 서비스 지원
• Error Control 기법이 포함되어 있어, 수신자가 패킷을 받았다는 신호가 안오면 재전송함.

UDP
 데이터 전송을 보장하지 않는 프로토콜.
• 수신자가 신호 보내든 말든, 재전송 안함.

 •  TCP에 비해서 전송 속도가 빠른 특징을 가짐.

ARP (Address Resolution Protocol)
• IP Address를 LAN 카드의 물리적 주소인 MAC 주소로 변환

RARP (Reverse Address Resolution Protocol)
• MAC 주소를 IP Address로 변환

ICMP
• 네트워크 오류와 상태를 점검하기 위해 사용

IP
• 네트워크 주소와 호스트 주소 정의에 의한 네트워크의 논리적 관리를 담당하는 것으로 송신자와 수신자의 주소를 지정