CS/네트워크
OSI 7계층
minkang
2021. 9. 6. 20:34
OSI 7계층이란? (Open System Interconnection)
- OSI 7계층은 네트워크 통신을 구성하는 요소들을 7개의 계층으로 표준화 한 것입니다.
- 통신 과정을 단계별로 나누어서 쉽게 알 수 있고, 특정 위치에서 이상이 생기면 그 단계만 수정할 수 있기 때문에 효율적이다.
1. 물리 계층 (Pysical Layer)
- 리피터, 케이블, 허브 등
- 물리계층은 하드웨어 전송 기술로 이루어져 있다.
- 전기적, 기계적 특성을 이용해 데이터를 주고받는다.
- 데이터 전송 단위 : 비트
2. 데이터 링크 계층 (Data Link Layer)
- 브릿지, 스위치 등
- 데이터링크 계층은 두 장치 간의 신뢰성 있는 전송을 보장하기 위한 계층이다.
- 신뢰성 있는 전송을 보장하기 위해 CRC 기반의 오류 제어 와 흐름 제어가 필요하다.
- 프레임에 Mac 주소를 이용해 통신한다.
- 데이터 전송 단위 : 프레임
3. 네트워크 계층 (Network Layer)
- 라우터, IP
- IP 주소를 제공하고 경로를 찾아주는 계층이다.
- 라우터를 통해 경로를 선택하여 IP 주소를 지정하고, 해당 경로에 따라 패킷을 전달해준다.
- 라우팅, 오류제어, 흐름제어, 세그멘테이션 등을 수행한다.
- 데이터 전송단위 : 패킷
4. 전송 계층 (Transport Layer)
- TCP, UDP
- TCP와 UDP 프로토콜을 통해 통신을 활성화한다.
- 포트를 열어두고, 프로그램들이 전송할 수 있도록 제공해준다.
- 이를 통해 양 끝 단 사용자들이 데이터를 주고 받을 수 있다.
- TCP : 신뢰성, 연결 지향적
- UDP : 비신뢰성, 비연결성, 실시간
- 데이터 전송 단위 : 세그먼트
5. 세션 계층 (Session Layer)
- API, Socket
- 양 끝 단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공
- 데이터가 통신하기 위한 논리적 연결을 담당
- TCP/IP 세션을 만들고 삭제하는 책임을 지니고 있다.
6. 표현 계층 (Presentation Layer)
- JPEG, MPEG 등
- 데이터 표현에 대한 독립성을 제공하고 암호화 하는 역할을 담당
- 파일 인코딩, 명령어를 포장, 압축, 암호화한다.
7. 응용 계층 (Application Layer)
- HTTP, FTP, DNS 등
- 최종 목적지로, 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.
- 사용자 인터페이스, 전자우편, 데이터베이스 관리 등의 서비스를 제공한다.
네트워크 계층(Network)과 전송 계층(Transprot)의 차이점
집을 비유로 하자면 네트워크 계층은 내 집을 찾아가는 것이다. 집이 여러 채가 있고, 그 중 내 집을 찾기 위해 우편번호를 확인하는데 여기서 우편번호는 IP에 해당한다. 전송 계층은 집을 찾은 다음 내 방을 찾는 것이다. 여기서 각 방의 이름을 port라고 생각하면 된다.
TCP/IP 4계층
현재의 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 통신규약(프로토콜)이다.
1. 네트워크 인터페이스 계층 (Network Interface or Network Access)
- OSI 7계층의 물리계층과 데이터 링크 계층에 해당
- 물리적인 주소로 MAC을 사용
- CSMA/CD, MAC, LAN, X25, 패킷망, 위성 통신, 다이얼 모뎀, LAN, 패킷망 등
- Ehternet(이더넷), Token Ring, PPP 등
2. 인터넷 계층 (Internet Layer)
- OSI 7계층의 네트워크 계층에 해당
- 통신 노드 간의 IP패킷을 전송하는 기능과 라우팅 기능을 담당
- IP, ICMP, ARP, RARP, OSPF, BGP 등
3. 전송 계층(Transport Layer)
- OSI 7계층의 전송 계층에 해당
- 통신 노드 간의 연결을 제어하고, 신뢰성 있는 데이터를 전송
- TCP, UDP 등
4. 응용 계층(Application Layer)
- OSI 7계층의 세션 계층, 표현 계층, 응용 계층에 해당
- TCP/UDP 기반의 응용 프로그램을 구현할 때 사용
- SMTP, FTP, HTTP, SSH, DNS 등
출처
- https://goitgo.tistory.com/25
- https://snyung.com/content/2020-08-31--%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EC%B4%88-OSI-7-%EA%B3%84%EC%B8%B5%EA%B3%BC-TCP-IP-%EA%B3%84%EC%B8%B5
- https://github.com/ksundong/backend-interview-question
- https://github.com/gyoogle/tech-interview-for-developer/blob/master/Computer%20Science/Network/OSI%207%20%EA%B3%84%EC%B8%B5.md
- https://velog.io/@dyllis/OSI-7%EA%B3%84%EC%B8%B5-%EC%A0%95%EB%A6%AC