티스토리 뷰
OSI 7계층과 TCP/IP 4계층
- OSI 7계층은 네트워크 통신을 표준화한 모델로, 통신 시스템을 7단계로 나누어 설명한 것이다.
- 하지만 OSI 모델이 실무적으로 이용하기에 복잡한 탓에 실제 인터넷에서는 이를 단순화한 TCP/IP 4계층이 사용되고 있다.
- 각 계층은 하위 계층의 기능을 이용하고, 상위 계층에게 기능을 제공한다.
OSI 7계층
응용 계층(Application Layer): User Interface를 제공하는 계층
- 사용자와 가장 가까운 계층으로 응용 서비스나 프로세스가 바로 이 계층에서 동작한다.
- HTTP, FTP 같은 통신 프로토콜도 여기에 속한다.
표현 계층(Presentation Layer): 데이터의 변환 작업을 하는 계층
- 응용프로그램이나 네트워크를 위해 데이터를 표현하는 것
- 데이터를 어떻게 표현할 지 정하는 역할의 계층이다. 크게 3가지 기능을 가진다.
- 송신자에서 온 데이터를 해석하기 위한 응용 계층 데이터 부호화, 변화
- 수신자에서 데이터의 압축을 풀 수 있는 방식으로 된 데이터 압축
- 데이터의 암호화, 복호화
세션 계층(Session Layer): 응용 프로그램 간의 연결을 지원해주는 계층
- 네트워크상 논리적인 연결을 관리하고 지속시켜주는 계층
- 2대의 기기, 컴퓨터 또는 서버 간에 "대화"가 필요하면 세션(session)을 만들어야 하는데 이 작업이 여기서 처리된다.
전송 계층(Transport Layer): 서비스를 구분하고 데이터의 전송 방식을 담당하는 계층(TCP/UDP)
- 양 끝단(End to End)의 사용자들이 데이터를 통신하도록 신뢰성을 확보하는 계층
- 대표적으로 TCP, UDP 같은 프로토콜이 적용되는 계층이다.
- 데이터 전송을 위해 Port 번호가 활용된다.
- 데이터 단위는 세그먼트
네트워크 계층(Network): 네트워크를 논리적으로 구분하고 연결하는 계층 - 논리적 주소 사용
- 다른 여러 라우터를 통한 라우팅을 비롯한 패킷 전달을 담당
- 보스턴에 있는 컴퓨터가 캘리포니아에 있는 서버에 연결하려고 할 때 그 경로는 수백 만 가지다.
- 이 계층의 라우터가 이 작업을 효율적으로 처리한다.
- 데이터 단위는 패킷
데이터 링크 계층(DataLink Layer): 물리적 매체에 패킷 데이터를 실어 보내는 계층 - 환경에 맞는 다양한 통신 프로토콜 지원
- 노드 간 데이터 전송을 제공하며 물리 계층의 오류 수정도 처리한다.
- 여기에는 2개의 부계층도 존재한다.
- 기기의 MAC 주소(무선 LAN 내장기기의 개별적으로 부여되는 단말번호)를 기반으로 통신한다.
- 이 계층에서 데이터의 단위를 프레임(Frame)이라고 칭한다.
- 이더넷, 투 포인트 프로토콜(HDLC, ADCCP), 근거리 네트워크 프로토콜(LLC, ALOHA) 등이 해당된다.
- 데이터 단위는 프레임
물리 계층(Physical Layer): 신호를 변환하여 전송하는 계층
- 전기적, 기계적 특성을 이용하여, 통신 케이블로 전기적 신호(에너지)를 전송
- 사용되는 통신 단위는 비트(bit)로, 0 또는 1로 나타낸다.
- 여기서는 단지 데이터만 전달하지, 전송하는 데이터의 종류나 오류를 제어하지 않는다.
- 대표적인 장치로 통신 케이블, 리피터, 허브 등이 있다.
TCP/IP 4계층
OSI 7계층이 좀 더 논리적으로 병합하여 축약된 것으로 알 수 있다.
즉, OSI 7계층이 네트워크 전송의 데이터 표준을 정립했다면, TCP/IP 4계층은 이를 실제로 사용하는 인터넷 표준인 셈이다.
TCP/IP는 2개의 계층으로 구분한다.
- TCP(상위계층)
- 메시지나 파일을 작은 패킷으로 나누거나 재조립하여 송수신에 반영하는 일을 담당
- IP(하위계층)
- 각 패킷의 주소 부분들을 처리하여 패킷들이 목적지로 정확히 송수신되도록 기능함.
응용 프로그램 계층(Application Layer): TCP/IP 기반의 응용 프로그램을 구분할 때 사용
- OSI 7계층의 응용 계층, 표현 계층, 세션 계층에 해당하며, 다른 계층의 서비스에 접근할 수 있는 응용 프로그램 서비스를 제공한다.
- 사용자가 소프트웨어 응용 프로그램을 사용하는 가장 가까운 계층이며, 이 인터페이스를 제공한다.
- 응용 프로그램 간의 데이터 통신을 위해 사용하는 프로토콜을 정의한다.
- HTTP, FTP, SSH, Telnet 등
전송 계층(Transport Layer): 통신 노드 간의 연결을 제어하고, 자료의 송수신을 담당
- OSI 7계층의 전송 계층에 해당하며, 통신 노드 간의 연결제어 및 자료의 송수신을 담당한다.
- 데이터 단위는 세그먼트(실질적인 데이터 전송단위), 전송 주소는 Port를 참조한다.
- TCP, UDP가 핵심 프로토콜이다. TCP, UDP에 대한 구분을 하고 데이터에 대한 제어 정보가 포함된다.
인터넷 계층(Internet Layer): 통신 노드 간의 IP 패킷을 전송하는 기능 및 라우팅 기능을 담당
- OSI 7계층의 네트워크 계층에 해당
- 논리적 주소인 IP를 이용한 노드간 전송과 라우팅 기능을 처리하며, 네트워크상 목적지까지 연결성을 제공한다.
- 패킷은 Segment를 목적지에 전송하기 위해 시작&목적지의 논리주소를 붙인 단위이다.
- 핵심 프로토콜은 IP, ARP, ICMP, IGMP 등이 있다.
네트워크 인터페이스 계층(Network Interface or Network Access Layer)
- OSI 7계층에서 물리계층과 데이터링크 계층에 해당.
- TCP/IP 패킷을 네트워크 매체로 송수신하는 과정을 담당한다.
- 데이터 단위는 프레임(패킷들의), 전송 주소는 MAC 주소를 참조한다.
OSI 7계층과 TCP/IP 4계층 비교
- TCP/IP 4계층은 OSI 모델보다 먼저 개발되었고, 서로 간의 계층은 정확하게 일치하지는 않는다.
- 두 계층을 비교할 때, 세션(Session)과 표현(Presentation) 2개의 계층이 TCP/IP 계층에 없다.
- TCP/IP 4계층은 인터넷이 발전되면서 표준화되어 신뢰성이 우수한 반면 OSI 7계층은 표준이지만 실질적 구현 예가 없어 신뢰성이 저하되었다.
- OSI 7계층은 장비 개발과 통신 자체를 어떠한 방식으로 표준으로 잡을지에 관련해 사용되는 반면에 TCP/IP 4계층은 실질적인 통신 자체에서 많이 사용된다.
캡슐화(Encapsulation)
- 데이터에 헤더를 붙이고 아래 계층에 보내는 것
역캡슐화(Decapsulation)
- 데이터에 헤더를 제거하고 위 계층에 보내는 것
'CS > 컴퓨터네트워크' 카테고리의 다른 글
3-way handshake는 무엇이고 각 과정은 어떻게 되나요? (0) | 2023.07.05 |
---|---|
TCP와 UDP를 비교 설명해주세요 (0) | 2023.07.05 |
[Computer Network] 6.1~6.3 (0) | 2022.12.11 |
[Computer Network] 5. 네트워크 계층: 제어 평면 (0) | 2022.12.05 |
[Computer Network] 4.3 인터넷 프로토콜(IP): IPv6, 4.4 일반적인 포워딩 및 소프트웨어 기반 네트워크(SDN) (0) | 2022.11.17 |