2022. 10. 30. 06:34ㆍWeb/Network
모듈화
- 모듈 : 독립적으로 동작하면서 상호 유기적으로 통합 가능해야 함.
- 시스템을 모듈화하지 않았다면 한 부분만 고장 나도 전체 시스템을 교체해야 함
프로토콜 설계 시 고려사항
- 네트워크 호스트의 주소 표현 방법
- 데이터 전송 과정의 오류 제어
- 통신 양단 사이의 전송 속도를 제어하는 흐름 제어
오류제어
- 변형 : 자연계에서는 잡음을 피할 수 없으며, 이로 인해 데이터 변형 발생
해결 방안 : 오류 검출 또는 복구를 할 수 있는 추가 정보를 같이 보냄.
정상적인 데이터 수신이 확인되면 긍정 응답(ACK)을 보냄.
긍정 응답을 받아야 다음 데이터 송신 진행.
변형이 확인되면 부정 응답(NAK)을 보내 재전송을 요구할 수 있음
- 분실 : 잡음이 아주 심하거나 매체에 오류가 있는 경우 데이터가 아예 도착하지 않을 수 있음
해결 방안 : 수신단에서 이를 확인할 방법은 없음.
송신단에서 데이터를 보낸 후 정해진 시간동안 긍정 응답이 오기를 기다림(타이머)
일정 시간 동안 응답이 안오면(타임 아웃) 분실로 판단하고 재전송
- 중복: 수신단에서 보낸 긍정 응답이 분실되거나, 타이머 설정 오류로 긍정 응답이 오기 전에 분실로 판단하여 재전송하는 경우 수신단은 같은 데이터를 수신하는 경우가 발생
해결 방안 : 송신단에서 데이터를 보낼 때 순서번호를 같이 보냄
수신단에서 이를 확인하여 이미 수신한 데이터의 경우 버림
흐름 제어
- 송수신 호스트의 데이터 처리 속도 차이에서 데이터 분실 발생
- 버퍼를 이용하여 완화가 가능하나, 버퍼 크기에 제한이 있음
- 수신 호스트의 버퍼 처리 속도보다 송신 호스트가 데이터를 전송하는 속도가 빠르면 논리적인 데이터 분실 오류가 발생
- 송신 호스트의 전송 속도 조절 필요
- 송신 호스트가 데이터를 전송하려면 반드시 수신 호스트로부터 명시적인 전송 허가를 받아야함
데이터 전달 방식
전이중
반이중
단방향
서비스의 종류
연결형 : 전달 경로를 설정하는 연결 설정 및 해제 과정 필요
비연결형 : 연결 설정 및 해제 과정 없이 바로 데이터 전송
서비스 프리미티브
* 쉽게 배우는 데이터 통신과 네트워크(3판) 책을 바탕으로 작성하였습니다.
'Web > Network' 카테고리의 다른 글
2. 네트워크 개념(3) (1) | 2022.10.30 |
---|---|
2. 네트워크 개념(2) (0) | 2022.10.30 |
1. 네트워크 기초(3) (0) | 2022.10.30 |
1. 네트워크의 기초(2) (0) | 2022.10.30 |
1. 네트워크의 기초(1) (0) | 2022.10.30 |