나의 IT일지
프로토콜 모델 본문
터미널끼리 데이터를 통신할 때, 데이터는 강력한 신호로 변조되며, 전송한 뒤에 강력한 신호를 복조해서 데이터를 얻는다. 이때 변조할 때 사용되는 것이 프로토콜이다. 프로토콜이란 네트워크 내에 있는 터미널간의 통신을 효율적으로 하기 위한 여러 가지 규칙으로, 장비의 두 포인터가 같은 프로토콜를 사용할 경우, 두 장비는 네트워크로 연결되어 있다고 할 수 있다.
OSI 7 Layer 모델
프로토콜은 용도에 따라 7계층으로 구분되어 있으며, 이를 OSI 7 Layer 모델이라고 한다. OSI 7 Layer 모델은 통신이 일어나는 과정을 7단계로 구분한 표준 모델로, 컴퓨터 통신 구조의 모델과 개발될 프로토콜의 표준적인 뼈대를 제공하기 위한 참조모델이다.
OSI 7 Layer모델은 총 7계층으로 응용계층, 표현계층, 세션계층, 전송계층 네트워크 계층, 데이터 링크 계층, 물리계층으로 나뉘며, 물리게층에서 전송계층까지 하위계층이라고 하며, 세션계층에서 응용계층까지 상위계층이라고 한다. 상위계층에 가까울수록 소프트웨어에 하위계층에 가까울수록 하드웨어에 가깝다.
- 7계층 : 응용 계층 - 사용자와 OSI 환경이 상호작용하는 논리 계층
- 프로토콜 : FTP, HTTP, SSH
- 전송단위(PDU) : 메세지(데이터)
- 장치 : 컴퓨터
- 6계층 : 표현 계층 - 확장자에 따른 데이터의 실행 방식과 유형을 결정 및 데이터 암호화하는 논리 계층
- 전송단위(PDU) : 메세지(데이터)
- 5계층 : 세션 계층 - 데이터나 서비스를 교환하는 프로세스의 실행, 중지, 재실행을 제어,관리하는 논리 계층
- 전송단위(PDU) : 메세지(데이터)
- 4계층 : 전송 계층 - 두 호스트 간의 데이터 전송 규칙을 정하는 논리 계층
- 식별자 : port번호 ==> 사용할 애플리케이션 식별
- 전송단위(PDU) : segment
- 사용 프로토콜 : TCP, UDP
TCP | UDP |
연결지향형 프로토콜 (핸드 쉐이킹을 통한 쌍방적 데이터전송) | 비연결지향형 프로토콜 (일방적 데이터 전송) |
순서적인 전송 순서 | 무작위인 전송 순서 |
데이터 수신 여부 확인 | 데이터 수신 여부 확인하지 않음 |
UDP보단 신뢰성 높지만 속도 느림 | TCP보단 신뢰성 낮지만 속도 빠름 |
용량이 적은 데이터를 전송할 때 사용 | 큰 용량의 데이터를 전송할 때 사용 |
FTP : 20(data), 21(control) SSH : 22 Telnet : 23 DNS : 53 (DNS간의 통신) HTTP : 80 POP3 : 110 NNTP : 119 IMAP : 143 HTTPS : 443 |
DHCP : 67(server), 68(client) TFTP : 69 DNS : 53 (도메인 전송) SNMP : 161, 162(trap정보) |
- 3계층 : 네트워크 계층 - 두 호스트간의 전송 경로를 결정하는 논리 계층
- 식별자 : IP주소 ==> 데이터를 수령받을 IP주소 식별
- 전송단위(PDU) : packet
- 사용 프로토콜 : IP, ARP, IMCP, IMGP
- 장비 : 라우터(1계층~3계층의 기능을 수행)
- 2계층 : 데이터 링크 계층 - 두 터미널의 인터페이스를 연결하며, 데이터의 전송,오류를 관리하는 계층
- LLC(PDU을 만드는 논리 계층)와 MAC(터미널 포인터 연결방식을 제어하는 물리 계층)로 서브계층이 존재
- 식별자 : MAC주소 ==> 데이터를 수령받을 MAC주소 식별
- 전송단위(PDU) : frame
- 사용 프로토콜 : Ethernet, PPP, HDLC, F/R
- 장비 : 스위치 허브(1계층과 2계층의 기능을 수행)
- 1계층 : 물리 계층 - 데이터를 신호로 변환해서 전송매체를 통해 데이터를 전송하는 물리 계층
- 전송단위(PDU) : bit
- 장비 : 케이블, 허브(1계층의 기능을 수행), 주피터
TCP/IP모델
OSI 7 Layer 모델은 개발자에게 표준을 제공하기 위한 모델이다. 하지만 TCP/IP모델은 실제로 데이터가 전송될 때의 과정을 나타낸 모델이다. TCP/IP모델은 네트워크에서 터미널 간의 정보를 통신할 때 사용하는 프로토콜을 4단계로 나눈 모델로, OSI 7 Layer 모델과 비교하면 간소화된 모델인 것을 확인 할 수 있다.
- 4계층 : 응용계층 - 사용자와 인터페이스간에 상호작용이 이뤄지는 계층
- 3계층 : 전송계층 - 데이터 전송 방식을 결정하는 계층, port번호 관련 계층
- 2계층 : 인터넷계층 - 최적의 전송 경로를 결정하는 계층, IP주소 관련 계층
- 1계층 : 네트워크 인터페이스 계층 - 신호의 규칙을 결정하고 전송하는 계층, MAC주소 관련 계층
데이터의 전송
데이터를 다른 터미널로 보내기 위해서는 강력한 신호로 변조해야 한다. 이 과정을 캡슐화라고 하며, 각 계층마다 데이터에 계층 헤더를 추가한다. 프로토콜 헤더란 기존 데이터의 맨 앞에 식별자를 추가한 데이터로, 프로토콜 헤더를 받은 데이터가 다음 계층으로 이동하면, 계층 헤더를 받은 데이터는 하나의 데이터로 인식이 된다.
- 응용 프로그램을 통해 data가 생성되며, 전송계층으로 이동
- 전송 계층에서 해당 서비스의 port번호가 있는 전송계층의 프로토콜 헤더데이터를 데이터에 추가한 후, 하위 계층으로 이동
- 네트워크 계층에서 통신받을 호스트의 IP주소가 있는 네트워크계층의 프로토콜 헤더데이터를 데이터에 추가한 뒤, 하위 계층으로 이동
- 데이터 링크 계층에서 통신받을 포인트의 MAC주소가 있는 데이터 링크계층의 프로토콜 헤더데이터와 오류제어를 위한 테일데이터를 추가한 뒤, 하위계층으로 이동
- 물리 계층에서 데이터(Frame)를 신호로 변환한 뒤에, 통신매체를 통해 신호를 전송
이렇게 캡슐화가 끝난 뒤에, 신호는 통신매체를 통해 Point to Point로 전송이 된다. 이때, Point to Point가 될 때 마다 데이터 링크 계층의 프로토콜 헤더데이터의 MAC주소는 변경이 된다.
그렇게 네트워크계층의 프로토콜 헤더데이터에 있는 IP주소를 가진 터미널에 도착하게 되면, 해당 데이터를 복조해야 하는데, 이 과정을 언캡슐화라고 한다.
- 스위치 포트를 통해 신호를 수령하고, 물리 계층에서 신호를 Frame으로 변환한 뒤, 상위 계층으로 이동
- 데이터 링크 계층에서 데이터 링크 계층의 프로토콜 헤더데이터에서 MAC주소의 일치여부를 확인, 일치한 경우 헤더데이터를 제거한 뒤, 상위 계층으로 이동
- 네트워크 계층에서 네트워크 계층의 프로토콜 헤더데이터에서 IP주소의 일치여부를 확인, 일치한 경우 헤더데이터를 제거한 뒤, 상위 계층으로 이동
- 전송 계층에서 전송계층의 프로토콜 헤더데이터의 port번호를 확인하여 해당 port번호와 같은 서버를 실행
즉, 데이터 전송은 다음과 같은 형식으로 진행된다.
- 상위계층(응용계층,표현계층,세션계층)의 프로토콜을 통해 요청데이터를 생성
- 전송계층의 프로토콜을 통해 End to End에서 End인 컴퓨터 간의 데이터 전송 규칙을 결정
- 네트워크 계층의 프로토콜을 통해 송신할 컴퓨터의 IP주소를 할당
- 데이터 링크 계층의 프로토콜을 통해 Point to Point의 Point인 터미널 간의 연결 규칙을 결정
- 물리계층을 통해 Point to Point 형식으로 데이터를 전달
- 전달 받은 컴퓨터에서 언캡슐화를 통해 요청데이터를 확인하고, 캡슐화를 통해 응답데이터를 생성한 뒤, 전송
- 컴퓨터에서 언캡슐화를 통해 응답데이터를 확인
'네트워크 > Cisco' 카테고리의 다른 글
VLAN 개념과 생성 (0) | 2023.04.27 |
---|---|
스위치,라우터 설정/관리 (0) | 2023.04.24 |
Cisco Packet Tracer (1) | 2023.04.23 |
IP주소 (1) | 2023.04.22 |
네트워크의 기초 (0) | 2023.04.16 |