프로토콜 (Protocol)
•
컴퓨터와 컴퓨터 사이에서 메시지를 전달한는 과정
•
3요소
◦
구문 (Syntax)
▪
데이터의 구조나 포맷을 의미
◦
의미 (Semantics)
▪
전송되는 데이터의 각 부분이 무엇을 뜻하는지를 알 수 있게 미리 정해둔 규칙
▪
데이터 자체뿐만 아니라 오류제어, 동기제어, 흐름제어를 포함
◦
순서 (Timing)
▪
어떤 데이터를 보낼 것인지와
▪
얼마나 빠르게 데이터를 보낼 것인지를 정의
•
프로토콜 기능
◦
주소 설정 (Addressing)
▪
서로 다른 시스템의 두 개체가 통신을 하는 경우 필요
◦
순서 제어 (Sequence Control)
▪
프로토콜 데이터 단위(PDU)를 전송할 때 보내는 순서를 명시하는 기능
▪
연결 지향형 (Connection-Oriented)에만 사용
◦
데이터 대열의 단편화 및 재조합 (Fragmentation & Reassembly)
▪
대용량 파일을 전송할 때, 전송 효율이 높은 작은 단위로 나누어 전송한 뒤,
▪
전송받은 시스템에서 이를 재조합해야함
◦
캡슐화 (Encapsulation)
▪
데이터에 제어 정보를 덧붙이는 것
▪
Service Data Unit[데이터] + Protocol Control Information[제어정보]
◦
연결 제어 (Connection Control)
▪
연결 설정, 데이터 전송, 연결 해제에 대한 통제 수행
◦
흐름 제어 (Flow Control)
▪
송신 측 개체로부터 오는 데이터의 양이나 속도를 조절하는 기능
▪
송신 측과 수신 측의 속도 차이 등으로 인한 정보 유실을 방지
◦
오류 제어 (Error Control)
▪
두 개체에서 데이터를 교환할 때, SDU나 PCI가 잘못되었을 경우, 이를 발견하는 기능
▪
순서를 검사하거나, 특정 시간 안에 받지 못하면, 재전송을 요구하는 방식
◦
동기화 (Synchronization)
▪
두 개체 간에 데이터르 전송할 때,
▪
각 개체는 특정 타이머 값이나 윈도우 크기 등을 통해
▪
동시에 정의된 인값을 공유하는 것
◦
다중화 (Multiplexing)
▪
통신 선로 하나에서 여러 시스템을 동시에 통신할 수 있는 기법
◦
전송 서비스
▪
우선순위 결정, 서비스 등급과 보안 요구 등을 제어하는 서비스