* 프로토콜
1. 3계층 프로토콜
복잡한 통신일수록 계층을 나누어 기능을 분담한다. 3계층 구조는 아래와 같다.
- Layer 3: 사용자 인터페이스 (말하기/읽기)
- Layer 2: 암호화/복호화 계층
- Layer 1: 실제 물리적 전달 (우편)
2. 계층화
1) 계층화 장단점
- 장점
- 모듈화: 각 계층이 독립적으로 설계 가능
- Blackbox화: 내부를 몰라도 입력→출력 구조만 맞으면 됨
- 호환성 제공
- 단점
- 단순한 작업도 오히려 계층 나누면서 복잡해질 수 있음
2) 프로토콜 계층화의 원칙과 논리적 연결
- 원칙 1: 양방향 통신이라면, 각 계층이 각 방향으로 상반되는 두 가지 기능을 수행해야 함
- 원칙 2: 양쪽의 같은 계층은 같은 종류의 데이터 처리 (ex. 암호문은 암호문끼리)
- 논리적 연결: 실제로는 물리적으로 이어지지 않아도, 각 계층 간에 논리적으로 연결된 것처럼 작동
3. LAN에서의 계층 흐름
브릿지, 스위치, 라우터 등을 거쳐 데이터가 전송된다.
- End-to-End: Application, Transport, Network 계층 간의 논리적 연결
- Hop-to-Hop: Data link, Physical 계층은 물리적 연결
* OSI 7계층
1. Layer 1 - Physical
장치 간의 물리적인 접속을 제어하기 위한 기능을 제공하는 최하위 계층이다.
- 데이터 부호화 방식, 신호형식, 데이터 충돌 감지 등을 정의
- 기계적, 전기적, 기능적 및 절차적 특성을 고려
- 전송매체를 통한 실제의 비트(bit) 전송
- 대표적인 프로토콜: RS-232C, RS-449, CDMA PHY, Coax, Fiber, Microwave, Satellite
- 데이터 링크 계층에서 온 이진 데이터가 물리 계층으로 전달됨.
- 물리 계층에서 데이터를 모뎀을 사용하여 변조(Modulation)하여 전송 매체(Transmission Medium)를 통해 보냄.
- 수신 측의 물리 계층에서 모뎀을 통해 데이터를 복조(Demodulation)하여 다시 이진 데이터로 변환.
- 데이터 링크 계층으로 전달됨.
2. Layer 2 - Data Link
물리계층에서 사용되는 통신 매체를 통해 데이터 frame의 전송 에러 검출 및 에러 제어를 관리하고 규정하는 계층이다.
- Media Access Control(MAC)과 Logical Link Control(LLC)의 2개 부계층으로 구분
- Link-by-link control 또는 Node-to-node control
- 대표 프로토콜: HDLC, SDLC, LAPB, ATM, PPP, 802.2
- 기능
- Framing and frame synchronization
- Physical addressing
- Flow Control
- Error Control
- Access Control
- Link Management
데이터가 네트워크 계층에서 내려와 데이터 링크 계층에서 프레임(Frame)으로 변환되는 과정과, 수신 측에서 다시 데이터 링크 계층에서 네트워크 계층으로 전달되는 과정은 아래와 같다.
- 네트워크 계층에서 받은 데이터를 프레임으로 만들기 위해 앞에 헤더(H2)와 뒤에 트레일러(T2)를 붙임.
- 프레임이 물리 계층을 통해 전송됨.
- 수신 측은 물리 계층에서 다시 데이터를 받은 후, 데이터 링크 계층에서 헤더(H2)와 트레일러(T2)를 제거하고 네트워크 계층으로 전달.
- A에서 데이터를 보내면, 물리 계층과 데이터 링크 계층을 통해 B로 이동.
- B에서 다시 데이터 링크 계층과 물리 계층을 거쳐 E로 이동.
- E에서 마지막 목적지 F까지 전달.
3. Layer 3 - Network Link
통신망을 사용하여 이동하는 사용자 데이터에 대한 경로 선택, 데이터 교환 및 중계 기능을 한다.
- 기능
- Internetworking
- Fragmentation
- Multicasting
- 대표 프로토콜: IPv4, IPv6
- 왼쪽 그림: 패킷 캡슐화(Encapsulation) 과정
- 상위 계층인 전송 계층(Transport Layer)에서 받은 데이터를 네트워크 계층에서 처리함.
- 네트워크 계층은 데이터 앞에 H3(Header 3, 네트워크 계층 헤더)를 추가하여 패킷(Packet)을 생성.
- 생성된 패킷은 데이터 링크 계층(Data Link Layer)으로 전달됨.
- 오른쪽 그림: 패킷 역캡슐화(Decapsulation) 과정
- 네트워크 계층이 데이터 링크 계층으로부터 받은 패킷을 처리함.
- 패킷에서 H3(Header 3, 네트워크 계층 헤더)를 제거하여 원래의 데이터만 전송 계층으로 전달.
- 전송 계층은 받은 데이터를 상위 계층(예: 애플리케이션 계층)으로 넘김.
- A에서 데이터를 네트워크 계층이 처리한 후, 데이터 링크 계층과 물리 계층을 거쳐 B로 전달.
- B에서 다시 네트워크 계층이 동작하면서 E로 전달.
- 최종적으로 목적지 F에 도착하여 네트워크 계층이 데이터를 처리.
4. Layer 4 - Transport
링크 종단 간에 정확한 데이터 전송을 제공하는 계층이다.
- 하위 계층과 상위계층의 인터페이스 역할
- 데이터 전송에 대한 오류검출, 오류복구, 흐름제어를 수행
- 대표 프로토콜: TCP, UDP, SCTP
- 애플리케이션 계층에서 보낸 데이터를 전송 계층에서 여러 개의 세그먼트로 나누고, 각 세그먼트에 헤더(H4)를 추가.
- 세그먼트들이 네트워크 계층으로 전달됨.
- 수신 측에서는 네트워크 계층에서 전달받은 세그먼트들을 전송 계층이 조립하여 원래의 데이터로 복원.
5. Layer 5 - Session
- 네트워크 대화 조정자
- 통신 시스템의 2개의 프로세스 간에 세션 접속 설정, 데이터 전송, 세션 접속 해제, 동기화, 대화관리 등의 기능
- 데이터 전송 중 에러가 발생하면 통신을 중단하고 재전송 기능을 수행
- 이상 상태의 복구 및 복구 후 재전송
- 설명
- 클라이언트-서버 모델에서 네트워크 통신 과정.
- 클라이언트가 허브(Hub)를 통해 서버로 요청을 보내고 응답을 받음.
- 세션 계층(Session Layer)이 데이터 흐름을 관리하며, H5(Header 5)를 사용해 동기화(SYN) 패킷을 처리.
- 세션 계층(Session Layer)의 역할
- 통신 세션 설정, 유지, 종료.
- 동기화(Synchronization) 및 체크포인트 제공.
6. Layer 6 - presentation
응용 프로그램 사이에 서로 다른 정보의 형식과 설정과 암호화 등을 해독하여 서로 연결이 가능하도록 하는 계층이다.
1) 캡슐화 과정
- 응용 계층(Application Layer)에서 생성된 데이터를 표현 계층으로 전달.
- 표현 계층(Presentation Layer)에서 데이터 변환을 수행한 후, H6 (헤더)를 추가.
- 변환된 데이터는 세션 계층(Session Layer)으로 전달됨.
- 핵심 개념
- 데이터 변환(Data Translation): 텍스트, 이미지, 비디오 등의 데이터를 공통 형식으로 변환.
- 압축(Compression): 전송 효율성을 높이기 위해 데이터 크기를 줄임.
- 암호화(Encryption): 보안을 위해 데이터를 암호화.
2) 역캡슐화 과정
- 세션 계층(Session Layer)에서 전달된 데이터를 표현 계층이 수신.
- 표현 계층(Presentation Layer) 이 H6 헤더를 제거하고 데이터 변환 수행.
- 변환된 데이터가 응용 계층(Application Layer)으로 전달됨.
- 핵심 개념
- 데이터 변환 복원(Data Translation Reversal): 데이터를 원래의 형식으로 변환.
- 압축 해제(Decompression): 압축된 데이터를 원래 크기로 복원.
- 복호화(Decryption): 암호화된 데이터를 해독하여 원본 데이터로 변환.
7. Layer 7 - Application
최상위 계층으로 통신망으로 연결된 응용 프로세스들의 정보교환이 되는 계층이다.
- 대표 프로토콜: SMTP, FTP, Telnet, HTTP
- 사용자가 직접 접근하는 계층이며, 이메일(X.400), 파일 전송(X.500, FTAM) 등을 다룸.
- 응용 계층에서 메시지를 생성한 후 헤더(H7)를 추가하여 전송.
- 메시지는 프레젠테이션 계층(Presentation Layer)으로 전달됨.
- 수신 측에서는 프레젠테이션 계층에서 응용 계층으로 데이터를 올려 보내면서 H7 헤더를 제거.
- 핵심 개념
- 응용 계층의 역할: 사용자와 네트워크 간 인터페이스 제공.
- H7 헤더 추가 및 제거: 데이터의 출처 및 목적지와 관련된 정보 포함.
* 주소 체계
- Physical Address (물리 주소): 네트워크 인터페이스 식별 (예: MAC 주소).
- Logical Address (논리 주소): 네트워크에서 특정 장치를 식별하는 주소 (예: IP 주소).
- Port Address (포트 주소): 프로세스 간 통신을 위한 주소 (예: TCP/UDP 포트).
- Specific Address (특정 주소): 애플리케이션 계층에서 사용되는 DNS 등.
물리 주소 (MAC) → 네트워크 주소 (IP) → 포트 주소 (TCP/UDP) → 특정 주소 (DNS) 순으로 데이터가 전달됨.
* OSI vs TCP/IP
- OSI 7계층 모델
- 응용 (Application)
- 표현 (Presentation)
- 세션 (Session)
- 전송 (Transport)
- 네트워크 (Network)
- 데이터 링크 (Data Link)
- 물리 (Physical)
- TCP/IP 프로토콜 스택
- 응용 계층 (Application Layer) → OSI의 응용, 표현, 세션 계층을 포함.
- 전송 계층 (Transport Layer) → OSI의 전송 계층과 동일.
- 네트워크 계층 (Network Layer) → OSI의 네트워크 계층과 동일.
- 데이터 링크 및 물리 계층 (Data Link & Physical Layer) → OSI의 데이터 링크 계층과 물리 계층을 포함.
- 핵심 개념
- OSI 모델은 이론적인 개념으로 자세한 계층 구조 제공.
- TCP/IP 모델은 실제 구현에 더 적합한 모델이며, 일부 계층이 통합됨.
- TCP/IP에서는 응용 계층이 OSI 모델의 세 가지 계층(응용, 표현, 세션 계층)을 포함.
'네트워크' 카테고리의 다른 글
[네트워크] 통신 기본 개념 (0) | 2025.03.17 |
---|---|
소켓 통신 (0) | 2025.03.16 |