프로토콜이란?
네트워크 프로토콜이란, 기기 간 데이터 교환을 원활히 하기 위한 표준화된 약속이다.
각 계층에서의 프로토콜들을 조합해 최종적으로 데이터 통신을 하게 된다.
OSI 7 계층으로 표준 프로토콜을 정의했지만, TCP/IP 프로토콜이 차지하는 비중이 커지면서 OSI 7계층을 모두 구현하지 않는다. 이렇게 생긴 모델이 TCP/IP 프로토콜 4계층이다.
전송 시 7계층(응용)에서 1계층(물리)로 각각의 층마다 인식할 수 있어야 하는 헤더를 붙이고(캡슐화!), 수신 시 1계층부터 7계층까지 헤더를 떼어낸다.(디캡슐화!)
Naver 서버 접속은
1. HTTP 프로토콜(물리계층/클라이언트와 웹 서버간 데이터 교환)과
2. TCP 프로토콜과 IP 프로토콜(네트워크 계층,전송 계층/IP 주소와 포트 번호 사용),
3. Ethernet 프로토콜(데이터링크 계층/최종적인 노드 접속) 등의 프로토콜을 조합해 데이터를 통신하는 것을 볼 수 있다.
2계층에서 하는 일
2계층은 같은 네트워크 상(LAN 대역)에 존재하는 여러 장비들 중에서 어떤 장비가 어떤 장비에게 보내는 데이터를 전달한다. (즉, 다른 네트워크와 통신할 때는 항상 3계층이 도와주어야 한다.)
2계층은 추가적으로 오류 제어, 흐름 제어를 수행한다.
- 장비 : 스위치, 이더넷, 브릿지
- 단위 : 프레임(Frame)
2계층 주소
LAN에서 통신할 때 사용하는 주소는 물리적인 주소로, MAC 주소이다. 맥 주소를 가지고 물리계층에서 받은 정보를 전달한다.
내 컴퓨터 맥 주소도 다음과 같이 cmd에서 알 수 있다.
2계층 프로토콜
LAN에서 통신할 때 사용하는 프로토콜은 Ethernet 프로토콜이다.
보내는 사람의 MAC 주소, 받는 사람의 MAC 주소를 포함하여 보낸다.
3계층에서 하는 일
3계층은 다른 네트워크 대역(WAN 대역)에 존재하는 곳의 네트워크에 데이터를 전달한다.
발신에서 착신까지의 패킷 경로를 제어한다.
3계층 주소
서로 다른 네트워크 대역(WAN)에서 통신할 때 사용하는 주소는, IP 주소이다.
- IP 주소
: 인터넷에 연결된 컴퓨터의 고유 주소이다. IP 에는 공인 IP와 사설 IP가 있다.
- 공인 IP는 Public IP 주소로, 전세계에서 유일한 주소이다.
- 사설 IP는 공유기로부터 할당 받은 IP 주소로, 하나의 공인 IP주소를 공유하여 여러 대의 컴퓨터가 인터넷에 접속하기 위해 필요하다. 이는 자신의 네트워크 망(LAN)안에서만 유일한 주소이다.
- 게이트 웨이
: 게이트 웨이는 공유기(라우터)의 사설 IP 주소이다. (공유기는 공인 IP와 사설 IP 둘 다 가질 수 있다.) 공유기에 연결되어있는 컴퓨터들은 공유기의 게이트웨이 주소를 통해 데이터를 보낸다.
- 서브넷 마스크
: IP 주소(192.168.0.1)는 네트워크 식별자, 호스트 식별자로 이루어져 있다. 서브넷 마스크는 IP 주소가 어디까지가 네트워크 식별자이고 어디까지가 호스트 식별자인지 구별해준다.
- 네트워크 식별자가 같다면 같은 네트워크 안에 있다는 뜻
- 호스트 식별자는 같은 네트워크 안에서 각각의 컴퓨터를 구분하는 주소
- 255.255.255.0 은 앞의 3칸은 네트워크 식별자로, 마지막 칸은 호스트 식별자로 쓰겠다는 뜻
3계층 프로토콜
3계층에서 사용하는 프로토콜은 ARP 프로토콜, IPv4 프로토콜, ICMP 프로토콜 등이 있다.
- ARP 프로토콜
: ARP 프로토콜은 같은 네트워크 대역에서 통신을 하기 위해 IP 주소를 이용해서 필요한 MAC 주소를 알아오는 프로토콜이다.
- 같은 네트워크 대역에서 통신을 한다고 하더라도, 데이터를 보내기 위해서는 7계층부터 캡슐화를 통해 데이터를 보내기 때문에 IP 주소와 MAC 주소가 모두 필요하다.
- 우리가 직접 할 일은 없지만, 컴퓨터가 계속해서 사용하고 있는 프로토콜이다.
- 가운데 있는 2계층 장비인 스위치는 2계층까지만 내용을 확인한다. 목적지 맥 주소가 브로드캐스트(요청이므로 목적지 맥주소를 모름)인 것을 확인하면, 모든 장비에게 arp 요청을 전달하게 된다.
- arp 요청을 받은 장비들은 3계층까지 까고 본인의 ip 주소랑 목적지 ip 주소가 일치하는 장비가 응답을 보낸다. (나머지는 요청 패킷을 버린다)
- 이후 ARP 캐시 테이블에 맥 주소를 저장해놓는다. (통신했던 컴퓨터들의 주소는 ARP 테이블에 남는다.)
- 최초의 통신을 할 땐, ARP 프로토콜을 통한 과정이 한번 실행됐다가 진행된다.