네트워크 2: OSI 참조 모델과 프로토콜
21 Jul 2024 #cs
프로토콜 (Protocol)
서로 다른 기기 간 데이터 교환을 원활히 수행할 수 있도록 표준화한 통신 규약.
- 1965년 Tom Marill의 ‘프로토콜’ 정의: 컴퓨터가 메시지를 전달하고, 메시지가 잘 도착했는지 확인하며, 도착하지 않았을 경우 메시지를 재전송하는 일련의 방법을 ‘기술적 은어’라는 의미의 ‘프로토콜’로 정의한 바 있음.
프로토콜의 기본 요소
- 구문 (Syntax): 전송하려는 데이터의 형식, 부호화, 신호 레벨을 규정.
- 의미 (Semantics): 기기 간 효율적 정보 전송을 위한 협조 사항 및 오류 관리를 위한 제어 정보를 규정.
- 시간 (Timing): 기기 간 통신 속도, 메시지의 순서 제어 등을 규정.
패킷 교환 방식 (Packet Switching)
메시지를 일정한 길이의 패킷으로 잘라서 전송하는 방식.
- 가상 회선 방식: 기기 간 논리적인 가상 통신 회선을 미리 설정하여 송신지와 수신지 사이 연결을 확립한 후, 설정된 경로를 따라 패킷을 순서대로 운반하는 방식.
- 제어 패킷에 의해 정보 전송 전 경로가 설정됨.
- 모든 패킷은 발생 순서대로 전송됨, 즉 패킷의 송/수신 순서가 같음.
- 데이터그램 방식: 연결 경로를 설정하지 않고, 인접 노드들의 트래픽(전송량) 상황을 감안해 각 패킷을 순서에 상관 없이 독립적으로 운반하는 방식.
- 패킷마다 전송 경로가 다름. 패킷은 목적지의 주소를 완전히 가지고 있어야 함.
- 패킷이 순서에 상관 없이 여러 경로를 통해 전송됨, 수신 측에서 순서를 재정리함.
OSI 참조 모델 (OSI 7계층)
다른 시스템 간 원활한 통신을 위해 ISO(국제표준화기구)에서 제안한 통신 규약 (Protocol).
응용 계층 (Application Layer)
사용자/응용 프로그램이 OSI 환경에 접근할 수 있도록 서비스 제공.
표현 계층 (Presentation Layer)
서로 다른 데이터 표현 형태를 갖는 시스템 간 상호 접속을 위해 코드 변환, 데이터 암호화, 데이터 압축, 구문 검색 등의 기능 수행.
세션 계층 (Session Layer)
송/수신 측 간 관련성 유지 및 대화 제어 담당.
전송 계층 (Transport Layer)
종단 시스템 (end-to-end) 간 투명하고 균일한 데이터 전송 서비스 제공.
네트워크 계층 (Network Layer)
개방 시스템 간 네트워크 연결 관리 및 데이터 교환/중계 기능.
데이터 링크 계층 (Data Link Layer)
인접한 개방 시스템 간 효율적인 정보 전송을 위해 연결 설정과 유지 및 종료를 담당.
물리 계층 (Physical Layer)
장치 간 실제 접속과 절단 등 기계적, 전기적, 기능적, 절차적 특성에 관한 규칙을 정의.
TCP/IP (Transmission Control Protocol/Internet Protocol)
인터넷에 연결된 다른 기종의 컴퓨터 간 데이터를 주고 받을 수 있도록 하는 표준 프로토콜.
응용 계층
응용 프로그램 간 데이터 송/수신 제공. TELNET, FTP, SMTP, SNMP, DNS, HTTP 등
전송 계층
호스트들 간 신뢰성 있는 통신 제공. TCP, UDP, RTCP 등.
- TCP (Transmission Control Protocol): 가상 회선 방식을 기반으로 하는 양방향 연결 서비스를 제공.
- OSI 7계층 중 전송 계층에 해당.
- 패킷의 다중화, 순서 제어, 오류 제어, 흐름 제어 기능을 제공.
- UDP (User Datagram Protocol): 데이터 전송 전에 비연결형 서비스를 제공하는 프로토콜.
- TCP에 비해 상대적으로 단순한 헤더 구조를 가짐. → 오버헤드가 적음, 흐름 제어나 순서 제어가 없음, 전송 속도가 빠름.
- 실시간 전송에 유리, 신뢰성 보다는 속도가 중요한 네트워크에 사용.
인터넷 계층
데이터 전송을 위한 주소 지정, 경로 설정을 제공. IP, ICMP, IGMP, ARP, RARP 등.
- IP (Internet Protocol): 데이터그램 방식을 기반으로 하는 비연결형 서비스를 제공.
- OSI 7계층 중 네트워크 계층에 해당.
- 패킷의 분해/조립, 주소 지정, 경로 선택 기능을 제공.
- ICMP (Internet Contol Message Protocol; 인터넷 제어 메시지 프로토콜): IP와 조합하여 통신 중 발생하는 제어 메시지를 관리.
- 오류 처리와 전송 경로 변경 등을 제어 메시지로 관리.
- 헤더는 8Byte로 구성됨.
- ARP (Address Resolution Protocol; 주소 분석 프로토콜): 호스트의 IP 주소를 연결된 네트워크 접속 장치의 물리적 주소(MAC Address)로 변환.
- RARP (Reverse Address Resolution Protocol; 역순 주소 결정 프로토콜): MAC 주소를 IP 주소로 변환.
네트워크 액세스 계층
실제 데이터(프레임)를 송/수신함. Ethernet, IEEE 802, HDLC, X.25, RS-232C, ARQ, L2TP 등
- L2TP (Layer 2 Tunneling Protocol): PPTP와 L2F의 장점을 결합하여 만들어진 터널링 프로토콜.
- OSI 7계층 중 데이터 링크 계층에서 구현됨.
- 자체적으로 암호화나 인증 기능이 없어 다른 보안 프로토콜과 함께 사용되는 경우가 많음.
- PPTP (Point to Point Tunneling Protocol): PPP 패킷을 IP 패킷에 캡슐화하여 통과시키기 위한 터널링 프로토콜.
- L2F (Layer 2 Forwarding): 인터넷을 통한 VPN 연결을 위해 개발된 터널링 프로토콜