OSI(Open Standard Interconnection Model) 7계층이란?
국제표준화기구(ISO)가 1977년 정의한 국제 통신 표준 규약이다. 네트워크의 기본 구조를 7개 계층으로 나눠서 표준화한 통신 규약으로 현재 다른 모든 통신 규약의 기반이 된다.
TCP/IP(Transmission Control Protocol/ Internet Protocol Model) 4계층이란?
OSI 7계층의 네트워크에서 데이터를 전송하는 과정을 4개의 계층으로 단순화시켜 사용하는 모델이다. 인터넷 모델이라고도 한다.
- 프로토콜: 컴퓨터 간에 정보를 주고받을 때의 통신 방법에 대한 규칙, 표준이다.
1. 물리 계층 (Physical Layer)
- 물리적으로 연결된 2대의 컴퓨터가 0과 1의 나열을 주고받을 수 있게 해주는 모듈
- 0과 1의 나열(디지털 신호)를 아날로그 신호로 바꾸어 전선으로 흘려보냄(인코딩)
- 아날로그 신호가 들어오면 0과 1의 나열(디지털 신호)로 해석함(디코딩)
- 하드웨어적으로 구현되어 있다
2. 데이터 링크 계층 (Data Link Layer)
- 같은 네트워크에 있는 여러 대의 컴퓨터들이 테이터를 주고받기 위해서 필요한 모듈
- 시작: 1111, 종료: 0000 이런 식으로 감싸서 전달해서 안에 내용물을 항상 일정하게 받아볼 수 있게 함
- 스위치: 컴퓨터들을 연결하고 있는 구리선을 뭉뚱그려서 박스에 넣어놓은 중간 고속도로 역할
- 라우터: 스위치와 스위치를 연결해 서로 다른 네트워크에 속한 컴퓨터끼리 통신이 가능하게 해주는 장비(공유기)
- 라우터와 라우터도 연결 가능
- 인터넷: 이렇게 전 세계의 컴퓨터를 연결한 것
- 하드웨어적으로 구현되어 있다.
3. 네트워크 계층 (Network Layer)
- 수많은 네트워크들의 연결로 이루어지는 inter-network 속에서 목적지 컴퓨터로 데이터를 전송하기 위해, IP 주소를 이용해서 길을 찾고(routing) 자신 다음의 라우터에게 데이터를 넘겨주는 것(forwarding)
- IP주소: 각 컴퓨터마다 갖는 고유한 주소
- 패킷: 도착 주소 뒤에 데이터를 붙인 묶음(네트워크를 통해 전송되는 데이터의 작은 조각)
- 운영체제의 커널에 소프트웨어적으로 구현되어 있다.
4. 전송 계층 (Transport Layer)
- 포트 번호를 사용하여 도착지 컴퓨터의 최종 목적지, 프로세스까지 데이터가 도달하게 하는 모듈
- 포트 번호: 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 가져야 하는 정수 값
- 예) :8080, :8282, :80
- 프로세스: 실행 중인 프로그램
- 송신자는 데이터를 보낼 때 데이터를 받을 수신자 컴퓨터에 있는 프로세스의 포트 번호를 붙여서 보냄
- 데이터 전송자는 수신자의 포트 번호를 미리 알고 있어야 한다.
TCP/IP 소켓 프로그래밍 (네트워크 프로그래밍)
- 운영체제의 전송 계층에서 제공하는 API를 활용해서 통신 가능한 프로그램을 만드는 것
- 운영체제의 커널에 소프트웨어적으로 구현되어 있다.
세션 계층(Session Layer)
표현 계층(Presentation Layer)
-> TCP/IP 4계층에서 응용 계층에 먹혔다.
5. 응용 계층(Application Layer)
- 상호 간에 통신하면서 업무를 처리할 수 있도록 필요한 서비스 기능을 제공하는 계층
- 이메일, 파일 전송, 웹사이트 조회 등
- 대표적인 프로토콜 HTTP, DNS, FTP, SMTP, POP3
HTTP(HyperText Transfer Protocol): 웹 서비스에서 클라이언트(웹 브라우저)와 웹 서버 간에 정보를 주고받기 웨해 사용되는 네트워크 프로토콜
DNS(Domain Name System): 네트워크에서 호스트 이름을 IP 주소로 변환하는 데 사용하는 시스템
FTP(File Transfer Protocol): 서버와 클라이언트 간에 파일을 전송하기 위한 프로토콜
SMTP(Simple Mail Transfer Protocol): 인터넷에서 메일을 송신하는 데 사용하는 프로토콜
POP3: 인터넷에서 메일을 수신하는 데 사용하는 프로토콜
- 서비스를 요청하는 측을 클라이언트, 서비스를 제공하는 측을 서버라고 한다.
https://www.youtube.com/watch?v=1pfTxp25MA8&t=354s
'Computer Science > Network' 카테고리의 다른 글
HTTP 메서드의 분류 및 방식 (0) | 2022.07.11 |
---|---|
HTTP(HyperText Transfer Protocol) 기본 (0) | 2022.07.07 |
www.naver.com이 나타나는 과정 (0) | 2022.07.07 |
URI(Uniform Resource Identifier) (0) | 2022.07.07 |
인터넷 네트워크(IP, TCP/UDP, PORT, DNS) (0) | 2022.07.07 |