본문 바로가기

CS/네트워크

[ TCP/IP 4계층 ] vs [ OSI 7계층 ] Re

① TCP/IP 4계층

현재 인터넷에서 컴퓨터들이 서로 정보를 주고받는데 쓰이는 프로토콜의 모음

 

TCP/IP 4계층과 OSI Model 7계층은 다음과 같다. 설명의 순서는 상단에서 하단으로 이루어진다.

OSI 7계층과 TCP/IP 4계층

1. 애플리케이션 계층(Application Layer)

- OSI 계층에서 5,6,7 계층에 해당한다.

- 사용자가 응용프로그램과 소통할 수 있게 UI를 제공한다.

 

2. 전송 계층(Transport Layer)

- OSI 계층에서 전송 계층에 해당한다.

- 데이터의 송수신을 담당하고 통신 노드 간의 연결을 제어한다.

- 네트워크 양단의 송수신 호스트 사이에서 신뢰성 있는 전송 기능을 제공한다.

→ 딱 Socket통신, HTTP통신 공부할 때 배웠던 내용 그대로다

 

3. 인터넷 계층(Internet Layer)

- OSI 계층의 네트워크 계층에 해당한다.

- 논리적 주소인 IP를 이용한 노드간 데이터 전송과 라우팅 기능을 담당한다.

 

4. 네트워크 액세스 계층(Network Access Layer)

- OSI 계층의 1, 2 계층에 해당한다.

- 운영체제의 하드웨워적인 요소와 관련되는 모든 것을 지원하는 계층이다.

- 물리적으로 데이터가 네트워크를 통해 어떻게 전송되는지 정의한다.

- 에러 검출 기능과 패킷의 프레임화 기능을 담당한다.

 

특징

- TCP/IP가 OSI 모델보다 먼저 개발되었다.

- 두 모델 모두 계층형이지만 서로의 계층이 정확하게 일치하지는 않는다.

- OSI 모델은 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 개념적으로 사용되는 반면 실질적인 통신은

  TCP/IP 프로토콜을 사용한다.

 

기술적인 특징

1) 연결형 서비스

    가상 회선 방식을 제공

    ● 3-way handshaking 과정을 통해 연결을 설정

    ● 4-way handshaking을 통해 연결을 한다.

 

2) 흐름 제어(Flow control)

    ● 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지

 

3) 혼잡 제어(Congetsion control)

    ● 네트워크 내의 패킷 수가 넘치지 않도록 방지

 

4) 신뢰성 높은 전송

    ● Dupack-based retranmission : ACK값이 중복으로 올 경우 패킷 이상을 감지하고 재전송 요청

    ● Timeout-based retransmission : 일정시간동안 ACK 값이 수신을 못할 경우 재전송 요청

 

※ TCP와 UDP

HTTP 3.0의 특징 중 하나가 UDP인데 TCP와의 차이점을 알아보자.

- TCP의 신뢰성은 높고 속도는 느리다. 반대로 UDP는 신뢰성은 낮지만 속도는 빠르다.

- UDP는 멀티캐스팅과 브로드캐스팅이 가능하다.

 

① OSI 7 계층

Open Systems Interconnection, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명하기 위해 개발한 모델

 

1. 응용 계층(Application Layer)

- 네트워크 자원에 사용자가 접근하는 방법을 제공하는 계층

- 최종적으로 사용자가 볼 수 있는 유일한 계층, 직접적으로 사용자와 상호작용한다.

- 웹 브라우저가 대표적인 예시이다.

- 프로토콜 : HTTP, Telnet, DNS, FTP

 

2. 표현 계층(Presentation Layer)

- 데이터의 변환 작업(인코딩, 디코딩, 암호화)을 하는 계층

- 응용 계층의 데이터 표현에서 독립적인 부분을 나타낸다.

- 프로토콜 : ASCC, MPEG, JPEG

 

3. 세션 계층(Session Layer)

- 응용 프로그램 간의 연결을 지원하는 계층

- 사용자와 서버 간에 대화가 필요하면 세션을 만드는 작업을 처리한다.

- 운영체제에 의해 세션 설정, 유지, 종료, 전송 중단시 복구 등을 할 수 있다.

- 프로토콜 : SSH, TLS

 

4. 전송 계층(Transport Layer)

- 서비스를 구분하고 데이터의 전송 방식을 담당하는 계층

- 포트(Port)번호를 사용하여 최종 도착지인 프로세스까지 데이터가 도달하게 한다.

- 보낼 데이터의 용량, 속도, 목적지 등을 처리한다.

- 양 끝단의 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있게 해주어, 상위 계층들이 데이터 전달의

  유효성이나 효율성을 생각하지 않도록 한다.

- 프로토콜 : TCP, UDP, ARP

 

5. 네트워크 계층(Network Layer)

- 서로 다른 두 네트워크 간의 데이터 전송을 부담한다.

- 데이터에 논리적 주소인 IP 주소를 부여하고 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅)을 한다.

- 데이터를 연결된 다른 네트워크로 전달함으로써 인터넷이 가능하게 만드는 계층이다.

- 프로토콜: IP, ICMP, IGMP

 

6. 데이터 링크 계층(Data Link Layer)

- 컴퓨터와 컴퓨터간 신뢰성있는 전송을 보장하기 위한 계층

- 물리 계층을 통해 송수신되는 정보의 오류를 검출하고 흐름을 관리한다.

- 데이터에 컴퓨터의 물리적 주소인 MAC 주소를 부여해서 출처를 알 수 있게 한다.

- 동일한 네트워크 내에서의 데이터 전송을 담당한다.(Ethernet)

- 프로토콜 : MAC, PPP, HDLC, etc...

 

7. 물리 계층(Data Link Layer)

- 네트워크의 하드웨어 전송 기술로 구성

- 전기적, 기계적, 기능적인 특성을 이용하여 통신 케이블로 데이터를 전송한다.

- 단지 데이터를 전달만 한다.

- 프로토콜 : Ethernet, RS-232C

 

특징

1) 통신이 일어나는 과정을 단계별로 파악하기 쉽다.

2) 특정 계층에서 이상이 생기면 해당 계층만 고치면 된다.

3) 일반적으로, 웹사이트나 네트워크 애플리케이션은 TCP/IP 모델을 기반으로 설계 및 개발됩니다. OSI 계층이란

    TCP/IP를 세부적으로 구조를 나눈 것으로 보고 참고하는 용도하는데 주로 쓰인다.

'CS > 네트워크' 카테고리의 다른 글

[ blocking I/O ], [ non-blocking I/O ], [ sync ], [ async ]  (0) 2024.06.20
IP 관련 개념 ☎  (0) 2024.06.17
HTTP, Socket, WebSocket  (0) 2024.06.17
SEO(Search Engine Optimization)  (0) 2024.06.15
HTTPS  (0) 2024.06.15