protocol이란?
프로토콜이란?? 개념
HTTP
TCP/IP
FTP
SMTP
와 같이 p로 끝나는 것은 대부분 프로토콜이다.
프로토콜은 외교적인 의미를 가짐
어원을 살펴보면 '맨 처음 붙이다'라는 의미를 가지고 있다.
데이터 통신 규약에서 프로토콜은
각각의 프로그램,DB,파일서비스 등을 가지고 있는 컴퓨터 네트워크가 데이터를 주고 받기위해 지켜야 하는 약속을 공식화 한 것.
프로토콜 기능
데이터를 한 번에 보내는 것은 비효율적임
그래서 데이터를 분해해서 전송한다.
패킷 : 분해된 각각의 데이터
(가구를 배송한다고 했을 때 큰 가구를 바로 배송하면 집이나 엘베에 들어 갈지 안갈지도 모름 => 분할해서 배송하고 재조립함)
부품은 그냥 배송이 아니라 분할된 부품들을 각각 포장, 그리고 큰 상자에 담아서 배송한다.
이처럼 데이터를 전송할 수 있도록 포장하는 과정을 캡슐화라고함 필요한 정보를 헤더에 포함시킴(부품 각각의 용도에 맞게 이름을 붙여주는 것처럼)
포장을 풀때는(역캡슐화)할때는( 기사님은 배송시간 같은 것을 물어봄)1. 데이터 전송의 시간과 양을 조절 => 연결제어
배송상태는 주는사람과 받는 사람이 같은 상태여야 한다. 2. 송수신간 데이터를 주고받는 시점과 그 상태를 일치시킴 => 동기화
배송이 완료되면 부품이 제대로 왔는지 확인한다.
조립설명서의 번호대로 갯수 확인 => 패킷에 번호를 붙여 관리 => 순서제어
잘못 배송오면 전화해야한다 => 전송과정에서 발생한 문제의 관리 방법 => 오류제어
등등 프로토콜은 여러 기능을 가짐
이러한 기능을 다 가질 필요는 없고 각 프로토콜의 특성과 필요에 따라 기능을 포함한다.
프로토콜의 구성요소
형식(syntax) -데이터를 어떻게 구성할 것인가? 어떻게 해석할 것인가?
의미(semeantic) - 데이터를 어떻게 제어할 것인가? , 오류는 어떻게 처리할 것인가?
순서(timing) - 통신하는 속도와 속도의 조절, 데이터 전송의 순서 관리
프로토콜의 활용 -1. url
텍스트,이미지, 동영상등의 리소스의 위치
http는 html주고받는 프로토콜
https는 http에 보완이 강화된 것
필요에 따라 프로토콜을 선택해서 사용할 수 있다