통신 프로토콜의 개념
- 프로토콜이란 ?
장치 사이에 정보를 주고받기 위해 정해놓은 규칙이다, 프로토콜이 없다면 장치간 통신은 불가능하다.
-프로토콜의 종류
프로토콜의 종류로는 우리가 자주쓰는 HTTP, HTTPS나 FTP, SSL, ARP, TCP/IP, telnet 등이 있다.
-프로토콜의 기본 요소
구문 ( Syntax ), 의미 ( Semantics ), 타이밍 ( Timing )
1. 구문 Syntax
주고받는 데이터를 어떤 스펙으로, 부호화 할것이며 신호의 레벨은 어떻게 할 것인가
2. 의미 Semantics
교화적이고 정확한 정보를 전달하기 위해 정보를 송수신하는 기본
3. 타이밍 Timing
메시지를 전달하는 속도나 순서는 어떻게 고려 할 것인가?
프로토콜의 기능
주소 지정 ( Addressing), 순서지정 ( Sequencing ), 단편화 & 재조합 ( fragmentation&reassembly )
흐름 제어 ( Flow control ), 연결제어 ( Connection control ), 오류제어 (Error control ), 캡슐화 ( Encapsulation )
동기화 ( Synchronization ), 다중화 ( Multiplexing )가 있다.
- 주소 지정 ( Addressing )
네트워크에서 통신을 하기 위해 송수신측 간에 인식이 가능하도록 하는 역할
- 순서 지정 ( Sequencing )
재조합을 위해 순서를 지정한다
- 단편화 & 재조합 ( fragmentation&reassembly )
큰 데이터를 쪼개고( Fragmentation ) 쪼갠 데이터를 다시 합치는 것
흐름 제어 ( Flow Control )
송신측이 수신측의 처리속도 보다 더 빨리 데이타를 보내지 못하도록 제어해 주는 것
수신측에서 송신측 발송 데이타의 양이나 속도를 제한 (송신측을 억제하는 형태) * 속도조절이라고도 함
- 연결 제어 ( Connection Control )
데이터를 주고받기 위해 연결을 어떻게 설정할 것인가? ex / TCP ( 3 handshake )
- 오류 제어 ( Error Control )
전송 도중에 데이터에 오류가 발생한다면 오류를 어떻게 처리 할 것인가?
수신측에서 에러를 검출 후에 정정 할 것인가
아니면 에러가 있는 것을 확인하고 데이터를 재요청 할 것인가?
- 캡슐화 ( Encapsulation )
데이터가 빠져 나갈 때 데이터의 정확한 전송을 위해 여러가지 추가 정보들을 덧붙이는 것
앞에는 header가 붙고 뒤에는 Trailer가 붙어서 보내진다.
- 다중화 ( Multiplexing )
한정된 통신 선로를 가지고 여러 시스템이 동시에 통신을 하려면 어떻게 해야 하는가?
MUX, DEMUX
하나의 설비(전송 매체 등)에 여러 신호를 함께 결합시켜 보냄
#추가
단편화 & 재조합 부분
PDU ( Protocol Data Unit ) = 쪼개진 데이터
#오류 제어 기법
1. 전진 오류 수정
- 해밍 코드
- 상승 코드
2. 후진 오류 수정
2.1. 오류 검출 방식
1. 패리티 검사 (Parity Check)
2. 블록합 검사 (Block Sum check)
3. 순환잉여검사(CRC : Cycle Redundancy Check)
2.2. (검출 후) 재전송 방식 (Automatic Repeat Request)
1. Stop and Wait ARQ방식
2. Go-back-N방식
3. Selective-Repeat ARQ 방식
4. 적응성(Adaptive)ARQ 방식
'Hacking > 네트워크' 카테고리의 다른 글
교육 내용 3 (0) | 2019.08.31 |
---|---|
네트워크_교육내용_2 (0) | 2019.08.26 |
packet [ 패킷 ] (0) | 2019.08.25 |
Network_Basic (0) | 2019.08.24 |
네트워크_교육내용_1 (0) | 2019.08.24 |