■ OSI 7계층
네트워크 통신의 표준을 제공하여,
네트워크 장비와 소프트웨어가 상호 운용 가능하게 한다.
각 계층은 독립적으로 설계되며,
특정 계층에서 발생한 문제를 쉽게 파악하고 해결할 수 있게 한다.
ㅁ 물리 계층 (Physical Layer)
네트워크 기기 간의 실제 물리적 연결과 비트 전송(비트 스트림)을 담당한다.
비트 전송 : 데이터를 0과 1의 비트로 변환해 물리적 매체를 통해 전송한다. 전송 매체 : 동축 케이블, 트위스티드 페어 케이블, 광섬유, 무선 주파수 등을 사용한다. 비트 전송 : 비트 단위로 데이터를 전송, 물리적 연결의 설치 및 유지보수를 담당한다.프로토콜 & 기기 : 허브, 리피터, 네트워크 어댑터, 모뎀, Ethernet, USB, Bluetooth 등
데이터 링크 계층에서 받은 비트를 물리적 매체로 전송
ㅁ 데이터 링크 계층 (Data Link Layer)
인접한 네트워크 기기간의 데이터 전송을 안정적으로 수행하고,
물리 계층에서 발생할 수 있는 오류를 검출하고 수정한다.
프레임 : 데이터를 프레임 단위로 나누어 전송한다.
MAC 주소(물리적 주소) : 각 네트워크 인터페이스에 고유하게 할당된 물리 주소를 사용하여 장치를 식별한다.
오류 검출 및 수정 : 오류 검출(Parity Check, CRC)과 수정(ARQ) 기법을 사용한다.
프로토콜 & 기기 : 스위치, 브리지, PPP, Ethernet, VLAN 등
네트워크 계층에서 받은 패킷을 프레임으로 캡슐화하여 물리 계층으로 전달
ㅁ 네트워크 계층 (Network Layer)
데이터를 목적지까지 올바르게 전송하기 위해 경로를 설정하고,
논리적 주소(IP 주소)를 이용하여 네트워크의 라우팅을 담당한다.
라우팅 : 데이터 패킷이 목적지까지 최적의 경로를 통해 전달되도록 경로를 설정한다.
주소 지정 : 논리적 주소(IP 주소)를 사용하여 장치들을 식별한다.
패킷 생성 : 전송 계층에서 전달받은 정보를 적당한 크기로 쪼개고, 각각에 논리주소를 포함하는 헤더를 추가해 패킷을 생성한다.
인터네트워킹 : 서로 다른 네트워크를 연결하고 데이터가 여러 네트워크를 통해 전달될 수 있도록 한다.
프로토콜 & 기기 : 라우터, 레이어 3 스위치, IP, ICMP, IPsec 등
전송 계층에서 받은 세그먼트를 패킷으로 캡슐화해 데이터 링크 계층으로 전달
ㅁ 전송 계층 (Network Layer)
종단 간(end-to-end) 통신을 제공,
데이터의 신뢰성 있는 전송을 보장한다.
세그먼트 : 데이터를 세그먼트 단위로 나누어 전송한다.
연결 제어 : 연결 지향적(ex: TCP) 또는 비연결 지향적(ex: UDP) 통신을 설정한다.
오류 검출 및 수정 : 전송 중 발생한 오류를 검출하고 수정한다.
흐름 제어 : 데이터 전송 속도를 조절하여 네트워크 혼잡을 방지한다.
프로토콜 & 기기 : 게이트웨이, TCP, UDP, SCTP 등
세션 계층에서 받은 데이터를 세그먼트로 캡슐화해 네트워크 계층으로 전달
ㅁ 세션계층 (Session Layer)
응용 프로그램 간의 세션을 설정, 유지, 종료하는 역할을 한다.
세션 관리 : 세션을 설정하고, 유지하며, 종료하는 역할을 한다. (포트번호 기반)
동기화 : 데이터 스트림에 체크 포인트를 삽입하여 복구를 용이하게 한다.
대화 제어 : 두 장치 간의 데이터 교환을 관리한다.
프로토콜 : SSH, PPTP, L2TP
표현 계층에서 받은 데이터를 세그먼트로 캡슐화해 전송 계층으로 전달
ㅁ 표현 계층 (Presentation Layer)
데이터를 응용 계층이 이해할 수 있는 형식으로 변환하며, 데이터의 암호화와 압축을 담당한다.
데이터 변환 : 데이터 형식을 변환해 응용 프로그램이 이해할 수 있도록 한다.
암호화 : 데이터의 기밀성을 보장하기 위해 암호화한다.
압축 : 데이터 전송 효율을 높이기 위해 압축한다.
구문 및 의미 : 데이터의 구문을 및 의미를 처리한다.
프로토콜 : SSL/TLS, JPEG, MPEG
응용 계층에서 받은 데이터를 변환하여 세션 계층으로 전달
ㅁ 응용 계층 (Application Layer)
최종 사용자와 직접 상호작용하는 계층, 다양한 네트워크 응용 서비스를 제공한다.
응용 서비스 : 파일 전송, 이메일, 원격 로그인, 웹 브라우징 등 다양한 네트워크 서비스를 제공한다.
프로토콜 : HTTP, FTP, SMTP, DNS 등 다양한 응용 프로토콜을 사용한다.
UI : 사용자가 네트워크에 접근하고 서비스를 이용할 수 있는 인터페이스를 제공한다.
프로토콜 : HTTP, FTP, SMTP, DNS
사용자와 직접 상호작용하여 데이터를 표현 계층으로 전달
물리 : 데이터 전송
데이터 링크 : MAC 주소로 통신, 송수신 정보 관리, 에러검출, 재전송, 흐름제어
네트워크 : 라우팅(ip지정 & 가장 빠르고 안전한 경로 전달), 흐름제어, 오류제어, 세그먼테이션 수행
전송 : 포트 열어두고 프로그램들이 전송할 수 있도록 제공
세션 : 데이터 통신 위한 논리적 연결 담당. TCP/IP 세션 만들고 없애는 책임 지님
표현 : 데이터 표현에 대한 독립성 제공하고 암호화, 파일 인코딩, 명령어 포장, 압축, 암호화
응용 : 최종 목적지, 응용 프로세스와 직접 관계, 일반적 응용 서비스 수행. UI, 전자우편, db관리 등 서비스 제공
ㅁ [Example] ---응표세전네데물--->
1. 사용자가 웹 브라우저에 www.example.com에 접속을 요청
2. HTTP 요청이 생성되어 계층별로 캡슐화
- 표현 : 적절한 형식으로 변환
- 세션 : 클라이언트-서버 간 세션 설정
- 전송 : 데이터를 세그먼트 단위로 나누어 전송
- 네트워크 : 세그먼트를 패킷으로 캡슐화
- 데이터 링크 : 패킷을 프레임으로 캡슐화
3. 물리 계층에서 비트 스트림으로 변환되어 네트워크를 통해 전송
4. 서버는 요청을 받아 각 계층을 통해 역캡슐화하고, HTTP 응답을 생성하여 다시 전송
5. 클라이언트는 응답을 받아 웹 페이지를 표시
ㅁ 7계층으로 나누는 이유 ?
통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있기 때문
ㅁ TCP/IP 4계층
1. 네트워크 인터페이스 계층
역할 : 물리적 네트워크 매체를 통해 데이터 전송
프로토콜 : Ethernet, Wi-Fi, ARP
2. 인터넷 계층
역할 : 패킷의 라우팅과 전송
프로토콜 : IP, ICMP, IGMP
3. 전송 계층
역할 : 종단 간 신뢰성 있는 데이터 전송
프로토콜 : TCP, UDP
4. 응용 계층
역할 : 네트워크 응용 프로그램과 ui 제공
프로토콜 : HTTP, FTP, SMTP, DNS
ㅁ TCP/IP 4계층 모델과 비교
표준과 학습도구로써 의의 갖는 OSI
실무적인 통신 기술 구현하는데 의미 갖는 TCP/IP 모델
공통점 | 차이점 | |
계층별 역할 | 캡슐화, 프로토콜 사용, 계층간 역할 정의 | OSI 모델 : 네트워크 시스템 구성 위한 범용적이고 개념적인 모델 vs TCP/IP : 인터넷이 발명되면서 함께 개발된 프로토콜 스택 |
통신 역할 | 다중화, 역다중화, 페이로드 전송 기능 |
다중화 (Multiplexing) : 여러 응용 프로그램의 데이터를 하나의 통신 채널로 통합하여 전송.
전송 계층에서 주로 이루어지며, 포트 번호를 사용하여 각 응용 프로그램을 식별
역다중화 (Demultiplexing) : 다중화된 데이터를 각 응용 프로그램으로 분할하여 전달.
수신 측에서 포트 번호를 사용하여 데이터가 어떤 응용 프로그램으로 전달될지 결정
프로토콜 집합 기반 구성 : 다양한 프로토콜을 사용하여 네트워크 통신을 구성.
IP는 주소 지정과 라우팅을 담당,
TCP/UDP는 데이터 전송을 담당
데이터 전송에 특화 : 효율적이고 신뢰성 있는 데이터 전송에 초점을 맞춤.
TCP는 신뢰성 있느 데이터 전송을
UDP는 빠른 전송을 제공
'CS' 카테고리의 다른 글
CS_네트워크_유니캐스트, 멀티캐스트, 브로드캐스트 (0) | 2024.06.03 |
---|---|
CS)네트워크_TCP&UDP (0) | 2024.05.30 |
CS)네트워크_HTTP/HTTPS (0) | 2024.05.26 |
CS)네트워크_대역폭 (1) | 2024.05.22 |
CS)네트워크_네트워크 기초 (0) | 2024.05.22 |